# README
GitHub Keeper
GitHub keeper is a CLI tool that helps to unify our repositories.
Features:
- List all Exasol repos where you are admin (
list-my-repos
) - Create / Update the branch protection for the default branch according to our standards (
create-branch-protection
) - Unify the labels of a GitHub repository (
unify-labels
)
Installation
- Install Go language. Minimum version is 1.13.
- On Debian / Ubuntu:
sudo apt install golang-go
- On Debian / Ubuntu:
- Install dependendent packages:
cd $HOME/<PATH TO THIS REPO>/ go get ./...
Configuration
Please create the config file ~/.github-keeper/secrets.yml
with the following content:
issuesSlackWebhookUrl: "<SLACK WEB-HOOK URL FOR ISSUE UPDATES>"
Hint: Instead of collecting all variables by hand you can also copy the file-content from the integration-teams keeper vault.
Usage
in the github-keeper directory run:
go run .
Hint: To verify the setup of all your repos use:
go run . configure-repo $(go run . list-my-repos)
Tips
Run all repos of the integration team:
gh repo list exasol --limit 500 --json name,repositoryTopics --jq '.[] | select(.repositoryTopics.[]?.name == "exasol-integration") | .name' | tr "\n" " "
Check if a repo has disabled GitHub Actions:
gh repo list exasol --limit 500 --json name,repositoryTopics --jq '.[] | select(.repositoryTopics.[]?.name == "exasol-integration") | .name' | tr "\n" " " | xargs go run . reactivate-scheduled-github-actions
Additional Information
# Packages
No description provided by the author