mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-28 07:13:20 +00:00
6415eb5945
Until now Gecko decision task artifacts would expire after a week. Unfortunately, some of these artifacts are needed in order for Treeherder to determine which tasks it can schedule on a given push. In this change, we're changing the expiration of all artifacts except those that are related to docker image optimizations, which, are very large files and we only want to keep for a week. MozReview-Commit-ID: 96ahyWmoI7W --HG-- extra : rebase_source : d0f4d65e3b5bfae832a5aaed60c0dfd58f0bdc62
123 lines
4.2 KiB
YAML
123 lines
4.2 KiB
YAML
---
|
|
version: 0
|
|
metadata:
|
|
name: 'Taskcluster tasks for Gecko'
|
|
description: "The taskcluster task graph for Gecko trees"
|
|
owner: mozilla-taskcluster-maintenance@mozilla.com
|
|
source: {{{source}}}
|
|
|
|
scopes:
|
|
# Note the below scopes are insecure however these get overriden on the server
|
|
# side to whatever scopes are set by mozilla-taskcluster.
|
|
- queue:*
|
|
- docker-worker:*
|
|
- scheduler:*
|
|
|
|
# Available mustache parameters (see the mozilla-taskcluster source):
|
|
#
|
|
# - owner: push user (email address)
|
|
# - source: URL of this YAML file
|
|
# - url: repository URL
|
|
# - project: alias for the destination repository (basename of
|
|
# the repo url)
|
|
# - level: SCM level of the destination repository
|
|
# (1 = try, 3 = core)
|
|
# - revision: (short) hg revision of the head of the push
|
|
# - revision_hash: (long) hg revision of the head of the push
|
|
# - comment: comment of the push
|
|
# - pushlog_id: id in the pushlog table of the repository
|
|
#
|
|
# and functions:
|
|
# - as_slugid: convert a label into a slugId
|
|
# - from_now: generate a timestamp at a fixed offset from now
|
|
|
|
tasks:
|
|
- taskId: '{{#as_slugid}}decision task{{/as_slugid}}'
|
|
task:
|
|
created: '{{now}}'
|
|
deadline: '{{#from_now}}1 day{{/from_now}}'
|
|
expires: '{{#from_now}}365 day{{/from_now}}'
|
|
metadata:
|
|
owner: mozilla-taskcluster-maintenance@mozilla.com
|
|
source: {{{source}}}
|
|
name: "Gecko Decision Task"
|
|
description: |
|
|
The task that creates all of the other tasks in the task graph
|
|
|
|
workerType: "gecko-decision"
|
|
provisionerId: "aws-provisioner-v1"
|
|
|
|
tags:
|
|
createdForUser: {{owner}}
|
|
|
|
scopes:
|
|
# Bug 1269443: cache scopes, etc. must be listed explicitly
|
|
- "docker-worker:cache:level-{{level}}-*"
|
|
- "docker-worker:cache:tooltool-cache"
|
|
# mozilla-taskcluster will append the appropriate assume:repo:<repo>
|
|
# scope here.
|
|
|
|
routes:
|
|
- "index.gecko.v2.{{project}}.latest.firefox.decision"
|
|
- "tc-treeherder.v2.{{project}}.{{revision}}.{{pushlog_id}}"
|
|
- "tc-treeherder-stage.v2.{{project}}.{{revision}}.{{pushlog_id}}"
|
|
|
|
payload:
|
|
env:
|
|
# checkout-gecko uses these to check out the source; the inputs
|
|
# to `mach taskgraph decision` are all on the command line.
|
|
GECKO_BASE_REPOSITORY: 'https://hg.mozilla.org/mozilla-unified'
|
|
GECKO_HEAD_REPOSITORY: '{{{url}}}'
|
|
GECKO_HEAD_REF: '{{revision}}'
|
|
GECKO_HEAD_REV: '{{revision}}'
|
|
|
|
cache:
|
|
level-{{level}}-hg-shared: /home/worker/hg-shared
|
|
level-{{level}}-checkouts: /home/worker/checkouts
|
|
|
|
features:
|
|
taskclusterProxy: true
|
|
|
|
# Note: This task is built server side without the context or tooling that
|
|
# exist in tree so we must hard code the version
|
|
image: 'taskcluster/decision:0.1.3'
|
|
|
|
maxRunTime: 1800
|
|
|
|
# TODO use mozilla-unified for the base repository once the tc-vcs
|
|
# tar.gz archives are created or tc-vcs isn't being used.
|
|
command:
|
|
- /home/worker/bin/run-task
|
|
- '--vcs-checkout=/home/worker/checkouts/gecko'
|
|
- '--'
|
|
- bash
|
|
- -cx
|
|
- >
|
|
cd /home/worker/checkouts/gecko &&
|
|
ln -s /home/worker/artifacts artifacts &&
|
|
./mach --log-no-times taskgraph decision
|
|
--pushlog-id='{{pushlog_id}}'
|
|
--project='{{project}}'
|
|
--message='{{comment}}'
|
|
--owner='{{owner}}'
|
|
--level='{{level}}'
|
|
--base-repository='https://hg.mozilla.org/mozilla-central'
|
|
--head-repository='{{{url}}}'
|
|
--head-ref='{{revision}}'
|
|
--head-rev='{{revision}}'
|
|
--revision-hash='{{revision_hash}}'
|
|
|
|
artifacts:
|
|
'public':
|
|
type: 'directory'
|
|
path: '/home/worker/artifacts'
|
|
expires: '{{#from_now}}364 days{{/from_now}}'
|
|
'public/docker_image_contexts':
|
|
type: 'directory'
|
|
path: '/home/worker/docker_image_contexts'
|
|
expires: '{{#from_now}}7 days{{/from_now}}'
|
|
|
|
extra:
|
|
treeherder:
|
|
symbol: D
|