Managing the Issue Labels in a Repository


#1

We have a number of repositories that contain many issue labels, most of which are common to all of them. Rather than manage these labels manually, we define them in a repository called repo_man and automate their management with scripting. The repositories we handle in this way include:

If you’d like to make a change to one or more labels in one these repositories, follow these easy steps:

  1. Clone our forked repo_man repository: https://github.com/habitat-sh/repo_man
  2. Read through the README to get an understanding of how things work, then make your configuration changes accordingly.
  3. Submit those changes as a pull request.

Once your PR is approved and merged, you can apply its changes yourself. To do that:

  1. Obtain a GitHub personal access token with at least the repo:public_repo permission, then configure your ~/.netrc as indicated in the repo_man README, using your access token as the password. Be sure to apply permissions of 0600 to that file.

  2. Ensure you’ve got recent versions of Ruby and Bundler installed. (I’ve personally run this with Ruby 2.3.1.)

  3. In the root of the repository, run bundle install.

  4. Run repo_man using the config.toml files in core-plans and hab-core:

     bundle exec bin/repo_man -c hab-core/config.toml
     bundle exec bin/repo_man -c core-plans/config.toml
    

That ought to do it! Your changes should be verifiable immediately.


#2

I love the use of labels!

I just want to add to this discussion some links:

We need to figure out eventually how to make use of the new description field that GitHub offers for labels within this workflow


#3

Yep, unfortunately i don’t think the API was available yet when they added the field but as soon as they are we should get a patch into repo_man to support that so we can stop maintaining a docfile with the info in it!