/the-power

The Power is a test harness used by folks who often need to teach, learn and debug the GitHub API's.

Primary LanguageShellGNU General Public License v3.0GPL-3.0

The Power

The Power is a simple test/learning framework to help you understand the GitHub API's. Add extra goodies to your GitHub Appliance or Organization on GitHub.com.

the-power

Table of Contents

  1. What is the Power?
  2. Setup Instructions
  3. Contributing to The Power
  4. Known Issues/Problems/Solutions
  5. Testcases

What is The Power?

The Power is a collection of scripts that demonstrate the GitHub APIs to create a usefully configured GitHub organization. The Power adds the following to a blank appliance or organization in <=30 seconds:

There are many other features and test-cases you can use or adapt to build scenarios of your own.

The Power is a tool for learning

  • Designed to be as simple as possible to understand.
  • Almost exclusively uses only curl and jq to complete most tasks. Only a few of the more complex scenarios have other dependencies.

The Power is vast

There are hundreds of pre-baked scripts to:

  • Create commits, secrets, hooks, issue comments, environments.
  • Bulk up your appliance by creating hundreds or thousands of users/orgs/repos/teams/pull requests.
  • Set up a Tiny GitHub App in less than 1 minute.
  • Demonstrate GitHub Actions Workflows.
  • Demonstrate CodeQL.

The Power is configurable

The Power is driven by it's configuration file .gh-api.examples.conf. You can edit this to create new organizations, teams, users to use in test cases.

Why The Power

There are lots of great tools like Postman, JMeter for interacting with API's and building testsuites and many of the latest API's come with their own interactive documentation built-in like the swagger petstore. The Power is a solution for times and places where those tools just aren't available.