Auto-tools/Projects/Pulse actions

From MozillaWiki
< Auto-tools‎ | Projects
Revision as of 16:27, 9 October 2015 by Armenzg (talk | contribs) (deployment information)
Jump to navigation Jump to search

Info

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

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

Pulse actions.png

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