with one click
create-test-repo
// Create a test repository using the-power's build-testcase scripts. Covers the full decision matrix of 30+ testcase scripts for repos with PRs, issues, workflows, secret scanning, rulesets, runners, and more.
// Create a test repository using the-power's build-testcase scripts. Covers the full decision matrix of 30+ testcase scripts for repos with PRs, issues, workflows, secret scanning, rulesets, runners, and more.
Clean up GitHub resources created by the-power test environment scripts. Delete repositories, teams, members, rulesets, webhooks, environments, and other resources. Suspend or unsuspend users on GHES.
Configure the-power for a target GitHub instance. Run configure.py to generate .gh-api-examples.conf with hostname, token, org, repo, and other settings. Covers interactive and non-interactive setup, GHES vs dotcom differences, curl flags for self-signed certs, and GitHub App configuration.
Create a fully populated test organisation on a GitHub instance using the-power's build-all.sh script. Includes users, teams, repos, PRs, branch protection, and more. Requires .gh-api-examples.conf to be configured first.
Find the right the-power script by category, keyword, or goal. Covers all ~980 scripts organised by operation type with safety labels for destructive, GHES-only, and bulk operations.
Execute any the-power script with guided parameter input. Covers prerequisites, working directory, output interpretation, HTTP status codes, error patterns, and debugging techniques.
Scale up a test environment by bulk-creating repos, users, orgs, teams, issues, branches, PRs, and commits using the-power's create-many scripts. Three performance tiers: shell, Python connection reuse, and Python pooling.
| name | create-test-repo |
| description | Create a test repository using the-power's build-testcase scripts. Covers the full decision matrix of 30+ testcase scripts for repos with PRs, issues, workflows, secret scanning, rulesets, runners, and more. |
| keywords | ["create","repo","repository","test","build-testcase","PR","pull request","issue","workflow","actions","secret scanning","ruleset","runner"] |
the-power ships 30+ build-testcase* scripts that each create a different
kind of test environment. This skill helps pick the right one.
.gh-api-examples.conf must exist (see the configure skill).org must already exist. If it does not, use the
create-test-org skill first, or run build-all.sh.jq, curl, python3, bash 5.x.| Goal | Script |
|---|---|
| Repo with PR, issue, branch protection, CODEOWNERS, release | build-testcase |
| Full org + team + users + repo | build-all.sh |
| Timed smoketest with pass/fail summary | build-smoketest |
| Dotcom-specific full setup | build-dotcom.sh |
| Goal | Script |
|---|---|
| Simple workflow with dispatch events | build-testcase-workflow-simple |
| Workflow with repository secrets | build-testcase-workflow-secrets |
| Workflow with curl trace for debugging | build-testcase-workflow-curl-trace |
| Workflow using a GitHub App | build-testcase-workflow-github-app |
| Self-hosted runner workflow | build-testcase-workflow-simple-self-hosted |
| Maven build workflow | build-testcase-workflow-maven |
| Merge queue demo | build-testcase-workflow-merge-queue-demo |
| Goal | Script |
|---|---|
| Secret scanning | build-testcase-secret-scanning |
| Push protection | build-testcase-push-protection |
| CodeQL zipslip detection | build-testcase-codeql-zipslip |
| Vulnerable dependencies | build-testcase-shai-hulud |
| Goal | Script |
|---|---|
| Ruleset with GitHub App override | build-testcase-ruleset |
| Ruleset with PR approval + org-owner override | build-testcase-ruleset-pr-approval |
| Goal | Script |
|---|---|
| Repository-level runner | build-testcase-selfhosted-runner |
| Organisation-level runner | build-testcase-selfhosted-runner-org |
| Enterprise-level runner | build-testcase-selfhosted-runner-enterprise |
| Goal | Script |
|---|---|
| PR with commit statuses and checks | build-testcase-with-commit-status |
| Automerge end-to-end | build-testcase-automerge |
| Force push scenario | build-testcase-with-force-push-danger |
| Merge methods (merge, squash, rebase) | build-testcase-show-pr-merge-methods |
| Goal | Script |
|---|---|
| Permissions across teams | build-testcase-permissions |
| Public, internal, and private repos | build-testcase-repo-trifecta |
| Large binary file handling | build-testcase-large-binary-jar |
| Environments with workflow | build-testcase-environment |
| GHES Manage API v1 | build-testcase-ghe-manage-v1 |
| OWASP WebGoat (Java) | build-testcase-goat |
| OWASP WebGoat (.NET) | build-testcase-goat-dotnet |
cd the-power
./build-testcase # fastest path to a repo with a PR
Run multiple testcases against the same config to layer features:
# Change repo name between runs
python3 gh-set-value.py --key repo --value my-security-repo
./build-testcase-secret-scanning
build-testcase-ghe-manage-v1 (requires Manage API)build-dotcom.sh (Pages, Gists)api.github.com to github.com for
runner config URLbuild-all.sh uses admin API (GHES only)repo value.create-test-org first.hostname first.