ReleaseEngineering/How To/Trigger arbitrary jobs

From MozillaWiki
Jump to: navigation, search

Disclaimer: use this carefully as you could cause a lot of trouble if too many jobs are scheduled.

Setup

You can find the whole documentation under: https://mozilla-ci-tools.readthedocs.org/en/latest/scripts.html

File issues

File issues under https://github.com/armenzg/mozilla_ci_tools/issues. armenzg is currently the main maintainer.

Usage

NOTE: You can now trigger jobs without having to find the installer and tests urls.
NOTE: This script will now trigger the associated build if there is no available completed build.

Run it like this:

python scripts/trigger.py \
--rev 6610f4646b3c --repo-name try --buildername "Android 2.2 Debug try build"

Hacks

  • You can run a test/talos job against:
    • your own installer located at any web-host
    • your own tests.zip located at any web-host
    • This allows you to hack a tests.zip on your people account and zip it back
      • use it with zip -rq9D && chmod 644
  • You also don't need a build to happen on a revision to trigger a test/talos job

Solved issues

  • There's some logic to prevent you from triggering jobs against non-existing builds/test.zip (to some extent)

Known issues

  • You can attempt to trigger a revision that doesn't exist
  • You can try to trigger a builder that doesn't exist
  • You can be tempted to write a script to run a lot of jobs
    • Remember that these are shared production resources
  • We could have a web page to make this easier