Bug 1394883: use /builds/worker in decision images; r?wcosta draft
authorDustin J. Mitchell <dustin@mozilla.com>
Wed, 30 Aug 2017 15:55:35 +0000
changeset 656069 485a05faeb74b026b4ab91e975a07c8f9e77467b
parent 656068 ffb599eaf80c3abdf07db606b334cb781b165794
child 656070 68db92c17484eeaa3aef3eafea11ab735449ac0a
push id77054
push userdmitchell@mozilla.com
push dateWed, 30 Aug 2017 18:09:07 +0000
reviewerswcosta
bugs1394883
milestone57.0a1
Bug 1394883: use /builds/worker in decision images; r?wcosta MozReview-Commit-ID: 29cnSAr3zCW
.taskcluster.yml
taskcluster/docker/decision/Dockerfile
taskcluster/docker/decision/HASH
taskcluster/docker/decision/VERSION
taskcluster/taskgraph/action.yml
--- a/.taskcluster.yml
+++ b/.taskcluster.yml
@@ -67,68 +67,68 @@ tasks:
       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: '${repoUrl}'
         GECKO_HEAD_REF: '${push.revision}'
         GECKO_HEAD_REV: '${push.revision}'
         GECKO_COMMIT_MSG: '${push.comment}'
-        HG_STORE_PATH: /home/worker/checkouts/hg-store
-        TASKCLUSTER_CACHES: /home/worker/checkouts
+        HG_STORE_PATH: /builds/worker/checkouts/hg-store
+        TASKCLUSTER_CACHES: /builds/worker/checkouts
 
       cache:
-        level-${repository.level}-checkouts-sparse-v1: /home/worker/checkouts
+        level-${repository.level}-checkouts-sparse-v1: /builds/worker/checkouts
 
       features:
         taskclusterProxy: true
         chainOfTrust: true
 
       # Note: This task is built server side without the context or tooling that
       # exist in tree so we must hard code the hash
       # XXX Changing this will break Chain of Trust without an associated puppet and
       # scriptworker patch!
-      image: 'taskcluster/decision:0.1.10@sha256:c5451ee6c655b3d97d4baa3b0e29a5115f23e0991d4f7f36d2a8f793076d6854'
+      image: 'taskcluster/decision:2.0.0@sha256:4039fd878e5700b326d4a636e28c595c053fbcb53909c1db84ad1f513cf644ef'
 
       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'
+        - /builds/worker/bin/run-task
+        - '--vcs-checkout=/builds/worker/checkouts/gecko'
         - '--sparse-profile=build/sparse-profiles/taskgraph'
         - '--'
         - bash
         - -cx
         - $let:
             extraArgs: {$if: 'tasks_for == "hg-push"', then: '', else: '${cron.quoted_args}'}
           # NOTE: the explicit reference to mozilla-central below is required because android-stuff
           # still uses tc-vcs, which does not support mozilla-unified
           # https://bugzilla.mozilla.org/show_bug.cgi?id=1383973
           in: >
-            cd /home/worker/checkouts/gecko &&
-            ln -s /home/worker/artifacts artifacts &&
+            cd /builds/worker/checkouts/gecko &&
+            ln -s /builds/worker/artifacts artifacts &&
             ./mach --log-no-times taskgraph decision
             --pushlog-id='${push.pushlog_id}'
             --pushdate='${push.pushdate}'
             --project='${repository.project}'
             --message="$GECKO_COMMIT_MSG"
             --owner='${ownerEmail}'
             --level='${repository.level}'
             --base-repository='https://hg.mozilla.org/mozilla-central'
             --head-repository="$GECKO_HEAD_REPOSITORY"
             --head-ref="$GECKO_HEAD_REF"
             --head-rev="$GECKO_HEAD_REV"
             ${extraArgs}
 
       artifacts:
         'public':
           type: 'directory'
-          path: '/home/worker/artifacts'
+          path: '/builds/worker/artifacts'
           expires: {$fromNow: '1 year'}
 
     extra:
       treeherder:
         $merge:
           - machine:
               platform: gecko-decision
           - $if: 'tasks_for == "hg-push"'
--- a/taskcluster/docker/decision/Dockerfile
+++ b/taskcluster/docker/decision/Dockerfile
@@ -1,28 +1,29 @@
 FROM          ubuntu:16.04
 MAINTAINER    Greg Arndt <garndt@mozilla.com>
 
 # Add worker user
-RUN useradd -d /home/worker -s /bin/bash -m worker
-RUN mkdir /home/worker/artifacts && chown worker:worker /home/worker/artifacts
+RUN mkdir /builds
+RUN useradd -d /builds/worker -s /bin/bash -m worker
+RUN mkdir /builds/worker/artifacts && chown worker:worker /builds/worker/artifacts
 
 # %include python/mozbuild/mozbuild/action/tooltool.py
 ADD topsrcdir/python/mozbuild/mozbuild/action/tooltool.py /tmp/tooltool.py
 
 # %include testing/mozharness/external_tools/robustcheckout.py
 ADD topsrcdir/testing/mozharness/external_tools/robustcheckout.py /usr/local/mercurial/robustcheckout.py
 
 # %include taskcluster/docker/recipes/install-mercurial.sh
 ADD topsrcdir/taskcluster/docker/recipes/install-mercurial.sh /tmp/install-mercurial.sh
 
 ADD system-setup.sh /tmp/system-setup.sh
 RUN bash /tmp/system-setup.sh
 
 # %include taskcluster/docker/recipes/run-task
-ADD topsrcdir/taskcluster/docker/recipes/run-task /home/worker/bin/run-task
+ADD topsrcdir/taskcluster/docker/recipes/run-task /builds/worker/bin/run-task
 
-ENV PATH /home/worker/bin:$PATH
+ENV PATH /builds/worker/bin:$PATH
 ENV SHELL /bin/bash
-ENV HOME /home/worker
+ENV HOME /builds/worker
 
 # Set a default command useful for debugging
 CMD ["/bin/bash", "--login"]
--- a/taskcluster/docker/decision/HASH
+++ b/taskcluster/docker/decision/HASH
@@ -1,1 +1,1 @@
-sha256:c5451ee6c655b3d97d4baa3b0e29a5115f23e0991d4f7f36d2a8f793076d6854
+sha256:4039fd878e5700b326d4a636e28c595c053fbcb53909c1db84ad1f513cf644ef
--- a/taskcluster/docker/decision/VERSION
+++ b/taskcluster/docker/decision/VERSION
@@ -1,1 +1,1 @@
-0.1.10
+2.0.0
--- a/taskcluster/taskgraph/action.yml
+++ b/taskcluster/taskgraph/action.yml
@@ -33,17 +33,17 @@ payload:
   cache:
     level-{{level}}-checkouts: /builds/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.7'
+  image: 'taskcluster/decision:2.0.0@sha256:4039fd878e5700b326d4a636e28c595c053fbcb53909c1db84ad1f513cf644ef'
 
   # 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: