canmove, Confirmed users
6,439
edits
(→Run the tasks to staging pools (OSX/Linux): add link to trychooser) |
(→Team) |
||
(14 intermediate revisions by 6 users not shown) | |||
Line 30: | Line 30: | ||
Our team is located on 3 continents and in 5 time zones. This allows us to provide better service, especially if you contact us using one of the following methods: | Our team is located on 3 continents and in 5 time zones. This allows us to provide better service, especially if you contact us using one of the following methods: | ||
* To request a new service, please [https://bugzilla.mozilla.org/enter_bug.cgi?product=Release%20Engineering file a bug] | * To request a new service, please [https://bugzilla.mozilla.org/enter_bug.cgi?product=Release%20Engineering file a bug] | ||
* To ask a general question, ping in #ci on | * To ask a general question, ping in #firefox-ci on Matrix, or email release@mozilla.com | ||
* To request status on an existing request, set the "needinfo" flag in the bug. | * To request status on an existing request, set the "needinfo" flag in the bug. | ||
Our team works normal business hours for our respective time zones. If you need to escalate an issue that is both '''urgent''' ''and'' '''important''', use the following methods: | Our team works normal business hours for our respective time zones. If you need to escalate an issue that is both '''urgent''' ''and'' '''important''', use the following methods: | ||
# Use #ci | # Use #firefox-ci on Matrix or email release@mmozilla.com, starting your message with 'URGENT:'. If no response in 15 minutes, then | ||
# Be sure the bug severity is set to "<tt>blocker</tt>" | # Be sure the bug severity is set to "<tt>blocker</tt>" | ||
# Call one or more of the following people (nagios page preferred if you have access): | # Call one or more of the following people (nagios page preferred if you have access): | ||
Line 61: | Line 61: | ||
| [https://twitter.com/bhearsum @bhearsum] | | [https://twitter.com/bhearsum @bhearsum] | ||
| [http://hearsum.ca/blog Ben's blog] | | [http://hearsum.ca/blog Ben's blog] | ||
|- | |- | ||
| Aki Sasaki | | Aki Sasaki | ||
Line 95: | Line 70: | ||
| [https://mozillians.org/en-US/u/mtabara/ mtabara] | | [https://mozillians.org/en-US/u/mtabara/ mtabara] | ||
| [https://twitter.com/mihaitabara @mihaitabara] | | [https://twitter.com/mihaitabara @mihaitabara] | ||
| [https://mihaitabara.github.io/ Mihai Tabara's blog] | |||
| [https:// | |||
|} | |} | ||
Line 194: | Line 149: | ||
See the [[Buildduty|Buildduty home page]] and [[Buildduty/manifesto|manifesto]] for more information. | See the [[Buildduty|Buildduty home page]] and [[Buildduty/manifesto|manifesto]] for more information. | ||
== | == CI Duty == | ||
CI Duty provides support for Firefox's release infrastructure and is currently handled by Releng | |||
See the [[ | See the [[CIDuty]] for more information. | ||
= Releng Applications = | = Releng Applications = | ||
Line 222: | Line 177: | ||
below pages should be deleted or be given a "warning" outdated box where appropriate. | below pages should be deleted or be given a "warning" outdated box where appropriate. | ||
== VCS Sync == | == VCS Sync == | ||
Line 267: | Line 202: | ||
== Testing == | == Testing == | ||
* [[ReleaseEngineering:IntermittentErrors | Intermittent Errors]] | * [[ReleaseEngineering:IntermittentErrors | Intermittent Errors]] | ||
* [[ReleaseEngineering/ | * [[ReleaseEngineering/How To/Request a loaner | Requesting a loaner]] | ||
* [[ReleaseEngineering/Testing a new Signing Server | Testing a new Signing Server]] | * [[ReleaseEngineering/Testing a new Signing Server | Testing a new Signing Server]] | ||
* [[ReleaseEngineering:TestingTechniques | Testing your changes]] | |||
= Subpages = | = Subpages = | ||
Line 275: | Line 211: | ||
* [http://moz-releng-docs.readthedocs.org/en/latest/ Releng Docs] '''''outdated''''' | * [http://moz-releng-docs.readthedocs.org/en/latest/ Releng Docs] '''''outdated''''' | ||
* [[Special:PrefixIndex/{{FULLPAGENAME}}/]] - all subpages of [[{{FULLPAGENAME}}]] in the wiki | * [[Special:PrefixIndex/{{FULLPAGENAME}}/]] - all subpages of [[{{FULLPAGENAME}}]] in the wiki | ||
* [[ReleaseEngineering/Obsolete Pages]] | * [[ReleaseEngineering/Obsolete Pages]] | ||
* [[ReleaseEngineering/Day_1_Checklist|day 1 checklist]] | * [[ReleaseEngineering/Day_1_Checklist|day 1 checklist]] | ||
Line 284: | Line 219: | ||
* Add the following changes to taskcluster/taskgraph/transforms/task.py file: | * Add the following changes to taskcluster/taskgraph/transforms/task.py file: | ||
<pre> | <pre> | ||
diff --git a/taskcluster/taskgraph/transforms/task.py b/taskcluster/taskgraph/transforms/task.py | |||
def | --- a/taskcluster/taskgraph/transforms/task.py | ||
+++ b/taskcluster/taskgraph/transforms/task.py | |||
@@ -1717,16 +1717,48 @@ def add_index_routes(config, tasks): | |||
index_type = index.get('type', 'generic') | |||
task = index_builders[index_type](config, task) | |||
del task['index'] | |||
yield task | |||
@transforms.add | |||
def | @transforms.add | ||
+def set_worker_type(config, tasks): | |||
+ for task in tasks: | |||
+ level = str(config.params['level']) | |||
+ | |||
+ provisioner_id, worker_type = get_worker_type( | |||
+ config.graph_config, | |||
+ task['worker-type'], | |||
+ level, | |||
+ ) | |||
+ task['worker-type'] = '/'.join([provisioner_id, worker_type]) | |||
+ yield task | |||
+ | |||
+ | |||
+@transforms.add | |||
+def use_beta_workertypes(config, tasks): | |||
+ """ | |||
+ This transform uses a dictionary of worker type names to worker type names | |||
+ in order to map one set of worker types to another set. This is typically | |||
+ useful when you want to run a try push against a staging set of worker | |||
+ types, that you want to test before rolling them out to production. | |||
+ """ | |||
+ find_replace_dict = { | |||
+ "releng-hardware/gecko-t-osx-1014": "releng-hardware/gecko-t-osx-1014-staging", | |||
+ "releng-hardware/gecko-t-linux-talos": "releng-hardware/gecko-t-linux-talos-b" | |||
+ } | |||
+ for task in tasks: | |||
+ if task['worker-type'] in find_replace_dict: | |||
+ task['worker-type'] = find_replace_dict[task['worker-type']] | |||
+ yield task | |||
+ | |||
+ | |||
+@transforms.add | |||
def build_task(config, tasks): | |||
for task in tasks: | |||
level = str(config.params['level']) | |||
provisioner_id, worker_type = get_worker_type( | |||
config.graph_config, | |||
task['worker-type'], | |||
level, | |||
</pre> | </pre> | ||
* Commit the changes using the following commit message: hg commit -m "<commit_message>; try: -b do -p macosx64 -u all -t none". The <commit_message> will be a message that will describe your action, like: Run all tests on OSX staging workers. | * Commit the changes using the following commit message: hg commit -m "<commit_message>; try: -b do -p macosx64 -u all -t none". The <commit_message> will be a message that will describe your action, like: Run all tests on OSX staging workers. | ||
** To run different tests or on a different platform, use https://mozilla-releng.net/trychooser/ | |||
** Do _not_ run unnecessay tests or you may end up on the [https://catlee.github.io/highscores/highscores.html hiscore board]. | |||
* Push the changes into try repository: hg push -f -r . ssh://hg.mozilla.org/try | * Push the changes into try repository: hg push -f -r . ssh://hg.mozilla.org/try | ||
* You will receive an email like this: | * You will receive an email like this: | ||
<pre> | <pre> | ||
Line 343: | Line 296: | ||
Summary: Test linux generic-worker; try: -b do -p linux64 -u none -t chromez-e10s | Summary: Test linux generic-worker; try: -b do -p linux64 -u none -t chromez-e10s | ||
</pre> | </pre> | ||
==== Notes ==== | |||
* A useful link for try syntax: https://mozilla-releng.net/trychooser/ | * A useful link for try syntax: https://mozilla-releng.net/trychooser/ | ||
* To see the hosts from the staging pool: | * To see the hosts from the staging pool: | ||
* OSX hosts: https://tools.taskcluster.net/provisioners/releng-hardware/worker-types/gecko-t-osx-1010-beta | * OSX hosts: https://tools.taskcluster.net/provisioners/releng-hardware/worker-types/gecko-t-osx-1010-beta | ||
* Linux hosts: https://tools.taskcluster.net/provisioners/releng-hardware/worker-types/gecko-t-linux-talos-b | * Linux hosts: https://tools.taskcluster.net/provisioners/releng-hardware/worker-types/gecko-t-linux-talos-b |