Skip to content

gru - A Ruby-based CLI tool to run maintenance tasks on GitHub repositories (tags, repo settings, tags rotation, stable branch cleanup, etc)

Notifications You must be signed in to change notification settings

angelmadames/gru

Repository files navigation

gru ― GitHub Repository Updater Tool

tests

📒 Summary

I got tired of manually updating default settings, adding labels, and rotating old tags on each repository. GitHub, specifically, allows you to set default settings at the organization level for new repositories but it is not possible to apply those to previously created repositories automatically.

The purpose of this script is to set a default set of labels to an specified repository.

Made with Ruby 💎 for learning purposes.

⚙️ Setup

  • Create a GitHub access token.

  • Create the dotenv (.env) file using the example .env.example file and update it accordingly.

  • Change your settings in the config.yml file.

  • Install the script dependencies using bundle:

    bundle install

🚀 Run it

Run the script on your terminal:

ℹ️ Help

./gru.rb help         # Show all available commands
./gru.rb help labels  # Show help for a command

➡️ Update labels

./gru.rb labels add
./gru.rb labels remove

➡️ Update repo settings

./gru.rb repo update
./gru.rb repo update-all

➡️ Remove old tags

./gru.rb tags list
./gru.rb tags remove-stale

About

gru - A Ruby-based CLI tool to run maintenance tasks on GitHub repositories (tags, repo settings, tags rotation, stable branch cleanup, etc)

Topics

Resources

Stars

Watchers

Forks

Languages