Bi-directional syncing between Pivotal Tracker & GitHub Issues
GitHub is the source of truth:
- When a New GitHub Issue is created, create a Pivotal Story with
external_id
. - When a New GitHub Milestone is created, create a Pivotal Epic.
- When a GitHub Issue is assigned to a GitHub MileStone, assign Pivotal Story to Epic.
- When a GitHub Milestone is updated, update Pivotal Epic.
- When a GitHub Label is assigned, create & assign label in Pivotal.
- Sync GitHub Issue descriptions with Pivotal Story.
- Sync Pivotal back to GitHub
-
Fork or Clone this project.
-
cp .env.example .env
and adjust accordingly -
yarn
-
yarn start
will open http://localhost:3000 -
yarn tunnel
in another terminal to create an external tunnel (e.g. https://5a7811ca.ngrok.io/api/github):Dashboard: http://localhost:4040/inspect/http
-
Add webhook to GitHub (e.g. https://github.com/ORG/REPO/settings/hooks/new) with the following permissions:
Use your
ngrok
tunnel URL (e.g. https://••••.ngrok.io/dev/github) until you push to production.- Issues
- Milestones
- Pull Requests
- Pull request reviews
- Pull request review comments
-
Create a
sync-github-pivotal
profile in~/.aws/credentials
:[sync-github-pivotal] aws_access_key_id=•••••••• aws_secret_access_key=••••••••••••••••
-
yarn deploy
-
Update your webhook to https://••••.execute-api.us-east-1.amazonaws.com/prod/github