Categorygithub.com/exasol/github-keeper
modulepackage
0.1.0
Repository: https://github.com/exasol/github-keeper.git
Documentation: pkg.go.dev

# README

GitHub Keeper

GitHub keeper is a CLI tool that helps to unify our repositories.

CI Build Quality Gate Status

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

  1. Install Go language. Minimum version is 1.13.
    • On Debian / Ubuntu:
      sudo apt install golang-go
      
  2. 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