Introducing the Cycode Recovery Tool, an internal disaster recovery solution exclusively designed to support Cycode's customers. This invaluable tool steps in during times of a disaster, ensuring that your software development workflows remain resilient even when faced with adversity.
- PR Unblocking: The Cycode Recovery Tool specializes in freeing up blocked Pull Requests (PRs), currently providing support exclusively for GitHub repositories. If your development process hits a snag with a blocked PR, this tool comes to the rescue, swiftly resolving the issue and getting your workflow back on track.
The tool expects a configuration file with SCM information named config.json. You can either add this config file when you build the docker image or mount the configuration file with docker run -v.
Sample config file:
[
  {
    "token": "<GitHub token with repo scope permission>",
    "provider": "GitHub",
    "repositories": [
      {
        "repository_name": "my_repository",
        "organization_name": "my_organization",
        "branch": "main"
      }
    ],
    "organizations": [
      {
        "organization_name": "my_organization"
      },
      {
        "organization_name": "my_second_organization"
      }
    ]
  }
]
- The token should have reposcope permissions.
- You can provide either repositoriesororganizations. You don't need both, but you need at least one of the two.
- In case organizationsare provided, we will update all the organization's default branch in all repositories.
- You can provide multiple SCM configurations.
There are 2 options to run the Cycode recovery tool:
- Using our docker image
- Building your own docker image
docker pull cycodehq/cycode_unblock_pull_request:latest
docker build -t cycode_unblock_pull_request . --no-cache
You will need to provide your configuration file
docker run -v /path/to/file/config.json:/app/config.json -ti cycode_unblock_pull_request
- Choose recovery action (currently only Release Block Pr)
- Choose provider (currently only GitHub)
- Choose which status checks to release
 
This project is licensed under the MIT License.