Auto-tools/Projects/Pulse actions
< Auto-tools | Projects
Jump to navigation
Jump to search
Info
- Source code: https://github.com/adusca/pulse_actions
- Running on: Heroku
- Logs on:
- For corp access -> https://papertrailapp.com/systems/pulse-actions/events
- For communit access:
- https://dashboard.heroku.com/apps/pulse-actions/resources
- Click on PaperTrail icon
Management
Normal deployments
git push heroku
Debugging deployments
Sometimes you want to push debugging info to your project but don't want to pollute your history. What you can do is create a temporary local branch and once you're done you can force push master again.
git checkout -b testing_branch
Make your testing commits and push to Heroku (repeat as needed)
git push heroku testing_branch:master
When you're done you will have to force push your original master branch
git push -f heroku master:master
Reverting a deployment
- Visit the [1] page.
- Choose the revision you want to roll back to and click "Rollback to here"
Test locally
- Setup your Pulse credentials
- If you don't have a pulse client visit [2] and create a user
- export PULSE_USER
- export PULSE_PW
- Test against treeherder.allizom.org (TODO: add notes to test against local Treeherder)
- Ask someone in #treeherder to make your account be of a sheriff role
- Start one of the workers which listens to specified pulse exchanges and routing keys
# valid topics are the keys in run_time_config.json python pulse_actions/worker.py --topic-base topic
Alerts
- Papertrail alerts sent to armenzg and others - https://papertrailapp.com/alerts
Accounts
- Papertrail:
- For employees, you can request a corp account to all Papertrail apps
- For contributors, speak with armenzg to add you to the Papertrail add-on
- Pulse:
Credentials
For pulse_actions to work we need set these environment variables:
- Buildapi - LDAP credentials (LDAP_PW/LDAP_USER)
- TaskCluster - TaskCluster client credentials (TASKCLUSTER_CLIENT_ID/TASKCLUSTER_ACCESS_TOKEN)
- Pulse - Pulse user credentials (PULSE_PW/PULSE_USER)
- Papertrail - API Token (PAPERTRAIL_API_TOKEN)
To run locally you will need to set all up as env variables. You won't need to add the Papertail token.
Workflow
This workflow was created with Gliffy: http://www.gliffy.com/go/publish/8686299
Support
In case the service is causing issues:
- Point of contact: armenzg
- Team alias address: auto-tools
- Brief description:
- Pulse_actions listens to various pulse exchanges and takes various scheduling actions through BuildApi.
- What to do in case of issues: Send an email to auto-tools and ask someone to stop it until point of contact can look into it.
- Impact: If you disable pulse_actions:
- sheriffs will not be able to backfill jobs (and other actions) from Treeherder
- Re-opening trees would take longer
- We will not have automated backfilling
- Re-opening trees would take longer
- sheriffs will not be able to backfill jobs (and other actions) from Treeherder