Confirmed users
378
edits
(Add mozharness notes from QA presentation) |
m (whitespace) |
||
Line 1: | Line 1: | ||
==What is mozharness?== | ==What is mozharness?== | ||
* It's a collection of Python modules that make it easy to extend and configure common automation tasks | * It's a collection of Python modules that make it easy to extend and configure common automation tasks | ||
** (Henrik) It's mostly all configuration driven | ** (Henrik) It's mostly all configuration driven | ||
Line 6: | Line 5: | ||
* Logging and config management (and much more) are already taken care of for you | * Logging and config management (and much more) are already taken care of for you | ||
* Nice things: cross-platform, platform-specific configs, make it easy to create reproducible environment | * Nice things: cross-platform, platform-specific configs, make it easy to create reproducible environment | ||
==How do I write a mozharness script? Some tips == | ==How do I write a mozharness script? Some tips == | ||
* See Resources below | * See Resources below | ||
* Get mozharness without checking out all of mozilla-central (See archiver_client.py below) | * Get mozharness without checking out all of mozilla-central (See archiver_client.py below) | ||
Line 21: | Line 18: | ||
** Lots more here: http://hg.mozilla.org/mozilla-central/file/default/testing/mozharness/mozharness | ** Lots more here: http://hg.mozilla.org/mozilla-central/file/default/testing/mozharness/mozharness | ||
* Be careful: if your mozharness script creates a virtual env, you don't want to run it inside your own virtual env | * Be careful: if your mozharness script creates a virtual env, you don't want to run it inside your own virtual env | ||
== How do I use mozharness scripts in my Jenkins instance? == | == How do I use mozharness scripts in my Jenkins instance? == | ||
* Disclaimer: This is just how we set things up on pf-jenkins. There are other ways. | * Disclaimer: This is just how we set things up on pf-jenkins. There are other ways. | ||
* Use archiver_client.py to put mozharness on your builders (see below) | * Use archiver_client.py to put mozharness on your builders (see below) | ||
Line 30: | Line 25: | ||
* Jenkins job checks out Github repo that contains our mozharness script (Note: our project will soon move from Github to mozilla-central) | * Jenkins job checks out Github repo that contains our mozharness script (Note: our project will soon move from Github to mozilla-central) | ||
* mozharness script is called in build step | * mozharness script is called in build step | ||
==References== | ==References== | ||
* https://wiki.mozilla.org/ReleaseEngineering/Mozharness (includes tutorial and simple examples) | * https://wiki.mozilla.org/ReleaseEngineering/Mozharness (includes tutorial and simple examples) | ||
* Ask questions on #releng - jlund, armenzg | * Ask questions on #releng - jlund, armenzg | ||
Line 41: | Line 34: | ||
** firefox-media-tests running per-commit in buildbot: http://hg.mozilla.org/mozilla-central/file/default/testing/mozharness/scripts/firefox_media_tests_buildbot.py | ** firefox-media-tests running per-commit in buildbot: http://hg.mozilla.org/mozilla-central/file/default/testing/mozharness/scripts/firefox_media_tests_buildbot.py | ||
*** for running tests on our Jenkins instance and also taking care of Treeherder submission https://gist.github.com/mjzffr/f2c7612d2efd3c0c1304#file-firefox_media_tests_jenkins-py (Note: we'll eventually remove Treeherder submission from this script because it will be taken care of by TaskCluster) | *** for running tests on our Jenkins instance and also taking care of Treeherder submission https://gist.github.com/mjzffr/f2c7612d2efd3c0c1304#file-firefox_media_tests_jenkins-py (Note: we'll eventually remove Treeherder submission from this script because it will be taken care of by TaskCluster) | ||
=== archiver_client example === | === archiver_client example === | ||
1. Download archiver_client: http://hg.mozilla.org/build/tools/file/default/buildfarm/utils/archiver_client.py | 1. Download archiver_client: http://hg.mozilla.org/build/tools/file/default/buildfarm/utils/archiver_client.py | ||
2. Run something like `python archiver_client.py mozharness --rev 62cd40885e93` and it will download to ./mozharness | 2. Run something like `python archiver_client.py mozharness --rev 62cd40885e93` and it will download to ./mozharness | ||
More: https://api.pub.build.mozilla.org/docs/usage/archiver/ | More: https://api.pub.build.mozilla.org/docs/usage/archiver/ |