This is a project to quickly get started using Jimdo/github-sync-labels-milestones for syncing milestones and labels across Github repos, especially using CI.
The intended workflow is:
- Update
config.yml
with new milestones and labels - Commit and push to a git repo (preferably via pull request)
- CI syncs labels and milestones across target Github repos
For more info on github-sync-labels-milestones see https://github.com/Jimdo/github-sync-labels-milestones
- Set
GITHUB_TOKEN
env var to Github personal access token - Install node/npm
- Install Ruby and bundler (http://bundler.io/)
- Clone this repo and delete
.git
directory
For additional details on using gslm, see https://github.com/Jimdo/github-sync-labels-milestones
In config.yml
place target repo slugs in a list under repositories
config.yml
has example labels and milestones. Follow the examples and gslm docs to create your desired config.
In do-release.sh
uncomment the lines that configure the git user settings and replace the name and email with your or your CI account's settings.
First install dependencies
npm install
bundle install
To ensure your yaml is valid, first run
npm run lint
If you just want to perform syncs locally, just run
npm run sync
This command will read config.yml
and sync the labels and milestones to the target repos.
Syncing and versioning your configs are easiest when done via CI. Setting this up is quick and painless:
- Create a git repo for your config and populate it with this starter project
- Set the
GITHUB_TOKEN
env var in CI to your Github personal access token - (optional) Ensure that CI has write access to your git repo
- Configure CI to install dependencies (
npm install
andbundle install
) - Configure the CI test command to be
npm run lint
- Configure the CI deployment command to be
npm run sync
- (optional) After
npm run sync
runnpm run release
- This will create and push a git tag on every sync
circle.yml
will make sync and release work out of the box using CircleCI (https://circleci.com/). PRs welcome for configs for other CI services.