mirror of
https://github.com/classilla/tenfourfox.git
synced 2024-11-19 02:13:04 +00:00
90 lines
3.0 KiB
YAML
90 lines
3.0 KiB
YAML
---
|
|
metadata:
|
|
name: 'Task graph used to build {{project}} specific jobs'
|
|
description: |
|
|
{{project}} push for {{owner}}
|
|
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:*
|
|
tasks:
|
|
- taskId: '{{#as_slugid}}decision task{{/as_slugid}}'
|
|
reruns: 3
|
|
task:
|
|
routes:
|
|
- tc-treeherder-stage.{{project}}.{{revision_hash}}
|
|
- tc-treeherder.{{project}}.{{revision_hash}}
|
|
created: '{{now}}'
|
|
deadline: '{{#from_now}}1 day{{/from_now}}'
|
|
metadata:
|
|
owner: mozilla-taskcluster-maintenance@mozilla.com
|
|
source: {{{source}}}
|
|
name: Initial decision task for {{project}} specific graphs
|
|
description: |
|
|
This is the single most important task as it decides how all other tasks
|
|
get built.
|
|
|
|
tags:
|
|
createdForUser: {{owner}}
|
|
|
|
workerType: "gecko-decision"
|
|
provisionerId: "aws-provisioner-v1"
|
|
|
|
scopes:
|
|
- "docker-worker:cache:tc-vcs-public-sources"
|
|
|
|
payload:
|
|
env:
|
|
GECKO_BASE_REPOSITORY: '{{{url}}}'
|
|
GECKO_HEAD_REPOSITORY: '{{{url}}}'
|
|
GECKO_HEAD_REF: '{{revision}}'
|
|
GECKO_HEAD_REV: '{{revision}}'
|
|
|
|
cache:
|
|
# The taskcluster-vcs tooling stores the large clone caches in this
|
|
# directory and will reuse them for new requests this saves about 20s~ and
|
|
# is the most generic cache possible.
|
|
tc-vcs-public-sources: '/home/worker/.tc-vcs/'
|
|
|
|
# Note: This task is built server side without the context or tooling that
|
|
# exist in tree so we must hard code the version
|
|
image: 'quay.io/mozilla/builder:0.3.0'
|
|
|
|
# Virtually no network or other potentially risky operations happen as part
|
|
# of the task timeout aside from the initial clone. We intentionally have
|
|
# set this to a lower value _all_ decision tasks should use a root
|
|
# repository which is cached.
|
|
maxRunTime: 1800
|
|
|
|
command:
|
|
- /bin/bash
|
|
- -cx
|
|
- >
|
|
source ./bin/decision.sh &&
|
|
mkdir -p /home/worker/artifacts &&
|
|
./mach taskcluster-graph
|
|
--pushlog-id='{{pushlog_id}}'
|
|
--message='{{comment}}'
|
|
--project='{{project}}'
|
|
--owner='{{owner}}'
|
|
--revision-hash='{{revision_hash}}'
|
|
--extend-graph > /home/worker/artifacts/graph.json
|
|
graphs:
|
|
- /home/worker/artifacts/graph.json
|
|
artifacts:
|
|
'public':
|
|
type: 'directory'
|
|
path: '/home/worker/artifacts'
|
|
# Arbitrary value for keeping these artifacts around. They are just the
|
|
# graph.json and context directories for now, so nothing that needs
|
|
# to stay around for long.
|
|
expires: '{{#from_now}}7 days{{/from_now}}'
|
|
extra:
|
|
treeherder:
|
|
symbol: D
|