Asana and Github tools for better project management.
Asana Task ID
Automatically assign Task numbers to newly created Asana cards (eg. FR-1)
Note: You will need an Asana Premium account to use these features. Asana Basic does not have access to custom fields and tasks search
Add GitHub commits to Asana cards via Task IDs in the commit message (see example below).
When a pull request is opened on GitHub, automatically update all associated Asana card's status to 'Review', and add the PR information to it.
When a pull request is closed and merged on GitHub, automatically update all associated Asana card's status to 'Staging' or 'Production' depending on which branch it is merged into, and add the PR information to it.
Getting started (run locally):
- Add the following variables into a .env file in the root folder of this app:
BASE_URL=https://featureready.herokuapp.com PRODUCTION_BRANCH_NAME=master STAGING_BRANCH_NAME=develop GITHUB_PATOKEN=GGGG GITHUB_OWNER_NAME=yoongfook GITHUB_REPO_NAME=featureready GITHUB_WEBHOOK_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxx ASANA_PATOKEN=0/9cccccccccccccccccccccccccccc ASANA_WORKSPACE_ID=111122222223333333 ASANA_PROJECT_ID=1111222224444444 ASANA_PROJECT_PREFIX=FR ASANA_CUSTOM_FIELD_NAME=Stage
npm run setup-custom-fieldsto setup all the required custom-fields on your Asana project (Asana Premium required)
npm run setup-asana-hooksto setup all required hooks when creating a task etc
npm run setup-github-hooksto setup all required GitHub hooks when adding a commit, creating pull requests, etc
npm run devto start the server locally
Getting started (deploy to Heroku):
- Clone this repo to your local machine
- Create a new Heroku app
- Push this repo to your newly created Heroku app (take note of the app's URL eg. https://featureready.herokuapp.com)
- Add the config vars above to your app's Heroku dashboard > Settings, adding the URL from #3 to BASE_URL
heroku run npm run setup-tags
heroku run npm run setup-hooks
npm list-hooks - lists all hooks on Asana