- Notifications
You must be signed in to change notification settings - Fork11
Superseded byhttps://github.com/apps/settings - Manage labels on GitHub as code
License
tonglil/labeler
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Superseded byhttp://github.com/apps/settings
Label management (create/rename/update/delete) on Github as code.
- Using GitHub?
- Want to commit/copy/share your label configuration?
- Use
labeler!
For FOSS maintainers, enable your users to submit PRs and improve the process/label system!
- Clean up your labels.
- Move labels out of thesameflatspace.
- Enforce a label color scheme that is notmeaningless norconfusing to view.
Inspired byinfrastructure as code tools likeTerraform and organized label systems in projects like these:
- https://github.com/kubernetes/kubernetes/labels
- https://github.com/coreos/etcd/labels
- https://github.com/coreos/rkt/labels
- https://github.com/spf13/hugo/labels
- https://github.com/docker/docker/labels
Get binaries for OS X / Linux / Windows from the latestrelease.
Or usego get:
go get -u github.com/tonglil/labelerFirst, set aGitHub token in the environment (optional, the token can be set as an cli argument as well).
export GITHUB_TOKEN=xxx
- The token for public repos need the
public_reposcope.- The token for private repos need the
reposcope.
To scan existing labels from a repository and save it to a file:
labeler scan labels.yaml --repo owner/nameWhich when run against a "new" repo created on GitHub, will:
- Fetch
bugwith colorfc2929 - Fetch
duplicatewith colorcccccc - Fetch
enhancementwith color84b6eb - Fetch
invalidwith colore6e6e6 - Fetch
questionwith colorcc317c - Fetch
wontfixwith colorffffff
And write them intolabels.yaml, creating the file if it doesn't exist, otherwise overwriting its contents.
To apply labels to a repository:
labeler apply labels.yaml --dryrunWherelabels.yaml is like:
repo:owner/namelabels: -name:bugcolor:fc2929 -name:help wantedcolor:000000 -name:fixcolor:ccccccfrom:wontfix -name:notescolor:fbca04
Which when run against a "new" repo created on GitHub, will:
- Rename
wontfixtofixwith colorfffffftoffffff - Update
help wantedwith color159818to000000 - Create
noteswith colorfbca04 - Delete
duplicatewith colorcccccc - Delete
enhancementwith color84b6eb - Delete
invalidwith colore6e6e6 - Delete
questionwith colorcc317c
When run again, rename changes will not be run because the label already exists.In this manner, this tool is idempotent.
$ labelerLabeler is a CLI application for managing labels on Github as code.With the ability to scan and apply label changes, repository maintainers canempower contributors to submit PRs and improve the project managementprocess/label system!Usage: labeler [command]Available Commands: apply Apply a YAML label definition file completion Output shell completion code for tab completion scan Save a repository's labels into a YAML definition file version Print the version informationUse "labeler [command] --help" for more information about a command.source<(labeler completion)
glide is used to manage vendor dependencies.
Roadmap:
- Plan -> execute (aka always dry-run first).
- Automatically update file after renaming operations are complete.
- Organizational support (apply/only-add one config to all repos in an organization).
This could use your contribution!Help me create a runnable test suite.
About
Superseded byhttps://github.com/apps/settings - Manage labels on GitHub as code
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors2
Uh oh!
There was an error while loading.Please reload this page.
