From 0363e0cffb2753c2c2fb252c7123993b0242bb04 Mon Sep 17 00:00:00 2001 From: Gregory Szorc Date: Fri, 30 Sep 2016 09:21:09 -0700 Subject: [PATCH] Bug 1306641 - Remove TaskCluster automation related to b2g; r=dustin This definitely isn't all of it. But I got the obvious chunks. Still need to clean up mozharness. MozReview-Commit-ID: JTZBydP3i2r --HG-- extra : rebase_source : 782401359036751896ef6c153a81a06cb14031bb --- taskcluster/ci/b2g-device/kind.yml | 97 --------- taskcluster/ci/build/kind.yml | 1 - taskcluster/ci/build/mulet.yml | 45 ---- taskcluster/ci/docker-image/kind.yml | 2 - taskcluster/ci/hazard/kind.yml | 23 -- taskcluster/docs/kinds.rst | 7 - .../scripts/builder/build-emulator-x86.sh | 68 ------ taskcluster/scripts/builder/build-emulator.sh | 70 ------- .../scripts/builder/build-mulet-haz-linux.sh | 24 --- .../scripts/builder/build-mulet-linux.sh | 37 ---- .../scripts/builder/build-simulator.sh | 196 ------------------ taskcluster/scripts/builder/gaia_props.py | 41 ---- taskcluster/scripts/builder/pull-gaia.sh | 14 -- .../scripts/phone-builder/build-dolphin.sh | 36 ---- .../scripts/phone-builder/build-phone-ota.sh | 42 ---- .../scripts/phone-builder/build-phone.sh | 29 --- .../scripts/phone-builder/post-build.sh | 49 ----- .../scripts/phone-builder/pre-build.sh | 33 --- .../transforms/gecko_v2_whitelist.py | 3 - taskcluster/taskgraph/transforms/job/mulet.py | 105 ---------- .../taskgraph/transforms/job/phone_builder.py | 88 -------- taskcluster/taskgraph/transforms/task.py | 3 +- taskcluster/taskgraph/try_option_syntax.py | 1 - testing/docker/b2g-build/Dockerfile | 147 ------------- testing/docker/b2g-build/VERSION | 1 - .../docker/b2g-build/bin/repository-url.py | 28 --- testing/docker/b2g-build/releng.repo | 6 - testing/docker/builder/Dockerfile | 32 --- testing/docker/builder/REGISTRY | 1 - testing/docker/builder/VERSION | 1 - testing/docker/builder/bin/checkout-gecko | 16 -- testing/docker/builder/git.env | 6 - testing/docker/builder/mulet.env | 7 - testing/docker/phone-builder/Dockerfile | 17 -- .../docker/phone-builder/bin/validate_task.py | 67 ------ testing/docker/phone-builder/hgrc | 4 - .../docker/phone-builder/tc-vcs-config.yml | 40 ---- .../phone-builder/tests/invalid_base_repo.yml | 50 ----- .../phone-builder/tests/invalid_head_repo.yml | 50 ----- testing/docker/phone-builder/tests/public.yml | 50 ----- .../phone-builder/tests/test_validation.py | 31 --- testing/docker/phone-builder/tests/valid.yml | 53 ----- 42 files changed, 1 insertion(+), 1620 deletions(-) delete mode 100644 taskcluster/ci/b2g-device/kind.yml delete mode 100644 taskcluster/ci/build/mulet.yml delete mode 100755 taskcluster/scripts/builder/build-emulator-x86.sh delete mode 100755 taskcluster/scripts/builder/build-emulator.sh delete mode 100755 taskcluster/scripts/builder/build-mulet-haz-linux.sh delete mode 100755 taskcluster/scripts/builder/build-mulet-linux.sh delete mode 100755 taskcluster/scripts/builder/build-simulator.sh delete mode 100755 taskcluster/scripts/builder/gaia_props.py delete mode 100755 taskcluster/scripts/builder/pull-gaia.sh delete mode 100755 taskcluster/scripts/phone-builder/build-dolphin.sh delete mode 100755 taskcluster/scripts/phone-builder/build-phone-ota.sh delete mode 100755 taskcluster/scripts/phone-builder/build-phone.sh delete mode 100755 taskcluster/scripts/phone-builder/post-build.sh delete mode 100755 taskcluster/scripts/phone-builder/pre-build.sh delete mode 100644 taskcluster/taskgraph/transforms/job/mulet.py delete mode 100644 taskcluster/taskgraph/transforms/job/phone_builder.py delete mode 100644 testing/docker/b2g-build/Dockerfile delete mode 100644 testing/docker/b2g-build/VERSION delete mode 100755 testing/docker/b2g-build/bin/repository-url.py delete mode 100644 testing/docker/b2g-build/releng.repo delete mode 100644 testing/docker/builder/Dockerfile delete mode 100644 testing/docker/builder/REGISTRY delete mode 100644 testing/docker/builder/VERSION delete mode 100644 testing/docker/builder/bin/checkout-gecko delete mode 100644 testing/docker/builder/git.env delete mode 100644 testing/docker/builder/mulet.env delete mode 100644 testing/docker/phone-builder/Dockerfile delete mode 100755 testing/docker/phone-builder/bin/validate_task.py delete mode 100644 testing/docker/phone-builder/hgrc delete mode 100644 testing/docker/phone-builder/tc-vcs-config.yml delete mode 100644 testing/docker/phone-builder/tests/invalid_base_repo.yml delete mode 100644 testing/docker/phone-builder/tests/invalid_head_repo.yml delete mode 100644 testing/docker/phone-builder/tests/public.yml delete mode 100755 testing/docker/phone-builder/tests/test_validation.py delete mode 100644 testing/docker/phone-builder/tests/valid.yml diff --git a/taskcluster/ci/b2g-device/kind.yml b/taskcluster/ci/b2g-device/kind.yml deleted file mode 100644 index 63d0ec9931bf..000000000000 --- a/taskcluster/ci/b2g-device/kind.yml +++ /dev/null @@ -1,97 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -implementation: taskgraph.task.transform:TransformTask - -transforms: - - taskgraph.transforms.build_attrs:transforms - - taskgraph.transforms.job:transforms - - taskgraph.transforms.task:transforms - -job-defaults: - worker-type: aws-provisioner-v1/flame-kk - worker: - implementation: docker-worker - docker-image: {in-tree: phone-builder} - max-run-time: 14400 - env: - MOZILLA_OFFICIAL: '1' - ENABLE_DEFAULT_BOOTANIMATION: 'true' - B2G_UPDATER: '1' - REPO_TRACE: '1' - DEBUG: '0' - VARIANT: eng - GAIA_OPTIMIZE: '1' - B2G_SYSTEM_APPS: '1' - MOZ_TELEMETRY_REPORTING: '1' - MOZ_CRASHREPORTER_NO_REPORT: '1' - GAIA_KEYBOARD_LAYOUTS: 'en,pt-BR,es,de,fr,pl,zh-Hans-Pinyin,zh-Hant-Zhuyin,en-Dvorak' - B2G_UPDATE_CHANNEL: 'default' - treeherder: - kind: build - tier: 3 - run-on-projects: - - try - - mozilla-central - - integration - - pine - index: - # despite being tier-3, these jobs should be inserted into the index ranked by pushdate - rank: pushdate - - -jobs: - aries-eng/opt: - description: "B2G Aries Opt" - index: - product: b2g - job-name: - gecko-v2: aries-eng-opt - treeherder: - platform: b2g-device-image/opt - symbol: Aries(Be) - run: - using: phone-builder - target: aries - - aries-eng/debug: - description: "B2G Aries Debug" - index: - product: b2g - job-name: - gecko-v2: aries-debug - treeherder: - platform: b2g-device-image/debug - symbol: Aries(Bd) - run: - using: phone-builder - target: aries - debug: true - - nexus-5l-eng/opt: - description: "B2G Nexus 5-L Opt" - index: - product: b2g - job-name: - gecko-v2: nexus-5-l-eng-opt - treeherder: - platform: b2g-device-image/opt - symbol: Nexus 5-L(Be) - run: - using: phone-builder - target: nexus-5-l - - nexus-5l-eng/debug: - description: "B2G Nexus 5-L Debug" - index: - product: b2g - job-name: - gecko-v2: nexus-5-l-eng-debug - treeherder: - platform: b2g-device-image/debug - symbol: Nexus 5-L(Bd) - run: - using: phone-builder - target: nexus-5-l - debug: true diff --git a/taskcluster/ci/build/kind.yml b/taskcluster/ci/build/kind.yml index 6574be668020..83d3a73d71c3 100644 --- a/taskcluster/ci/build/kind.yml +++ b/taskcluster/ci/build/kind.yml @@ -14,5 +14,4 @@ jobs-from: - android.yml - linux.yml - macosx.yml - - mulet.yml - windows.yml diff --git a/taskcluster/ci/build/mulet.yml b/taskcluster/ci/build/mulet.yml deleted file mode 100644 index abfd88e87596..000000000000 --- a/taskcluster/ci/build/mulet.yml +++ /dev/null @@ -1,45 +0,0 @@ -linux64-mulet/debug: - description: "Linux64 Mulet Debug" - index: - product: b2g - job-name: - buildbot: linux64-mulet - gecko-v2: mulet-dbg - # despite being tier-3, these jobs should be inserted into the index ranked by pushdate - rank: pushdate - treeherder: - platform: mulet-linux64/debug # See bug 1286086 - symbol: B - tier: 3 - worker-type: aws-provisioner-v1/mulet-debug - worker: - implementation: docker-worker - max-run-time: 3600 - run: - using: mach-via-build-mulet-linux.sh - mozconfig: b2g/dev/config/mozconfigs/linux64/mulet_dbg - tooltool-manifest: b2g/dev/config/tooltool-manifests/linux64/releng.manifest - -linux64-mulet/opt: - description: "Linux64 Mulet Opt" - index: - product: b2g - job-name: - buildbot: linux64-mulet - gecko-v2: mulet-opt - # despite being tier-3, these jobs should be inserted into the index ranked by pushdate - rank: pushdate - treeherder: - platform: mulet-linux64/opt # ?!?% - symbol: B - tier: 3 - worker-type: aws-provisioner-v1/mulet-opt - worker: - implementation: docker-worker - max-run-time: 3600 - run: - using: mach-via-build-mulet-linux.sh - mozconfig: b2g/dev/config/mozconfigs/linux64/mulet - tooltool-manifest: b2g/dev/config/tooltool-manifests/linux64/releng.manifest - - diff --git a/taskcluster/ci/docker-image/kind.yml b/taskcluster/ci/docker-image/kind.yml index ec7c8f8bc6da..06705c5144ef 100644 --- a/taskcluster/ci/docker-image/kind.yml +++ b/taskcluster/ci/docker-image/kind.yml @@ -14,8 +14,6 @@ images: - desktop-test - desktop1604-test - desktop-build - - builder - tester - lint - android-gradle-build - - phone-builder diff --git a/taskcluster/ci/hazard/kind.yml b/taskcluster/ci/hazard/kind.yml index 96b498a5bc5a..a85e836cfa1f 100644 --- a/taskcluster/ci/hazard/kind.yml +++ b/taskcluster/ci/hazard/kind.yml @@ -58,26 +58,3 @@ jobs: tc-vcs checkout workspace/gecko "$GECKO_BASE_REPOSITORY" "$GECKO_HEAD_REPOSITORY" "$GECKO_HEAD_REV" "$GECKO_HEAD_REF" && cd ./workspace/gecko/taskcluster/scripts/builder && ./build-haz-linux.sh --project browser $HOME/workspace - - linux64-mulet-haz/debug: - description: "Mulet Hazard Analysis Linux" - index: - product: b2g - job-name: - buildbot: linux64-haz-mulet - gecko-v2: mulet-haz-debug - treeherder: - platform: mulet-linux64/opt - symbol: tc(H) - tier: 3 - # don't run anywhere by default, but still available via try: -b d -p linux64-mulet-haz - run-on-projects: [] - worker: - docker-image: {in-tree: builder} - run: - using: hazard - tooltool-manifest: "gecko/b2g/dev/config/tooltool-manifests/linux64/hazard.manifest" - mozconfig: "b2g/dev/config/mozconfigs/linux64/mulet-hazards" - command: > - checkout-gecko workspace && cd ./workspace/gecko/taskcluster/scripts/builder - && buildbot_step 'Build' ./build-mulet-haz-linux.sh $HOME/workspace diff --git a/taskcluster/docs/kinds.rst b/taskcluster/docs/kinds.rst index e505a19d8c4a..44bddb360bbe 100644 --- a/taskcluster/docs/kinds.rst +++ b/taskcluster/docs/kinds.rst @@ -70,13 +70,6 @@ spidermonkey Spidermonkey tasks check out the full gecko source tree, then compile only the spidermonkey portion. Each task runs specific tests after the build. -b2g-device ----------- - -B2G device builds produce binaries targetted to specific devices. These -involve some device-specific binaries which are not redistributable, so the -inputs to and outputs from these tasks are restricted. - marionette-harness ------------------ diff --git a/taskcluster/scripts/builder/build-emulator-x86.sh b/taskcluster/scripts/builder/build-emulator-x86.sh deleted file mode 100755 index a0e9717ddc16..000000000000 --- a/taskcluster/scripts/builder/build-emulator-x86.sh +++ /dev/null @@ -1,68 +0,0 @@ -#! /bin/bash -vex - -# Ensure all the scripts in this dir are on the path.... -DIRNAME=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) -PATH=$DIRNAME:$PATH - -WORKSPACE=$1 - -### Check that require variables are defined -test -d $WORKSPACE -test $GECKO_HEAD_REPOSITORY # Should be an hg repository url to pull from -test $GECKO_BASE_REPOSITORY # Should be an hg repository url to clone from -test $GECKO_HEAD_REV # Should be an hg revision to pull down -test $TARGET - -. setup-ccache.sh - -# Figure out where the remote manifest is so we can use caches for it. - -MANIFEST=${MANIFEST:="$WORKSPACE/gecko/b2g/config/$TARGET/sources.xml"} - -tc-vcs repo-checkout $WORKSPACE/B2G https://github.com/mozilla-b2g/B2G $MANIFEST - -# Ensure symlink has been created to gecko... -rm -f $WORKSPACE/B2G/gecko -ln -s $WORKSPACE/gecko $WORKSPACE/B2G/gecko - -### Install package dependencies -install-packages.sh $WORKSPACE/gecko - -debug_flag="" -if [ 0$B2G_DEBUG -ne 0 ]; then - debug_flag='--debug' -fi - -rm -rf $WORKSPACE/B2G/out/target/product/generic_x86/tests/ - -gecko_objdir=/home/worker/objdir-gecko/objdir - -$WORKSPACE/gecko/testing/mozharness/scripts/b2g_build.py \ - --config b2g/taskcluster-emulator.py \ - "$debug_flag" \ - --disable-mock \ - --work-dir=$WORKSPACE/B2G \ - --log-level=debug \ - --target=$TARGET \ - --b2g-config-dir=$TARGET \ - --checkout-revision=$GECKO_HEAD_REV \ - --repo=$WORKSPACE/gecko \ - --gecko-objdir=$gecko_objdir - -# Move files into artifact locations! -mkdir -p $HOME/artifacts - -ls -lah $WORKSPACE/B2G/out -ls -lah $gecko_objdir/dist/ - -mv $WORKSPACE/B2G/sources.xml $HOME/artifacts/sources.xml -mv $WORKSPACE/B2G/out/target/product/generic_x86/tests/gaia-tests.zip $HOME/artifacts/gaia-tests.zip -for name in common cppunittest reftest mochitest xpcshell web-platform; do - mv $gecko_objdir/dist/*.$name.tests.zip $HOME/artifacts/target.$name.tests.zip ; -done -mv $gecko_objdir/dist/b2g-*.test_packages.json $HOME/artifacts/target.test_packages.json -mv $WORKSPACE/B2G/out/emulator.tar.gz $HOME/artifacts/emulator.tar.gz -mv $gecko_objdir/dist/b2g-*.crashreporter-symbols.zip $HOME/artifacts/b2g-crashreporter-symbols.zip -mv $gecko_objdir/dist/mozharness.zip $HOME/artifacts/mozharness.zip - -ccache -s diff --git a/taskcluster/scripts/builder/build-emulator.sh b/taskcluster/scripts/builder/build-emulator.sh deleted file mode 100755 index b0186882fdeb..000000000000 --- a/taskcluster/scripts/builder/build-emulator.sh +++ /dev/null @@ -1,70 +0,0 @@ -#! /bin/bash -vex - -# Ensure all the scripts in this dir are on the path.... -DIRNAME=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) -PATH=$DIRNAME:$PATH - -WORKSPACE=$1 - -### Check that require variables are defined -test -d $WORKSPACE -test $GECKO_HEAD_REPOSITORY # Should be an hg repository url to pull from -test $GECKO_BASE_REPOSITORY # Should be an hg repository url to clone from -test $GECKO_HEAD_REV # Should be an hg revision to pull down -test $TARGET - -. setup-ccache.sh - -# Figure out where the remote manifest is so we can use caches for it. - -if [ -z "$MANIFEST" ]; then - MANIFEST="$WORKSPACE/gecko/b2g/config/$TARGET/sources.xml" -fi - -tc-vcs repo-checkout $WORKSPACE/B2G https://github.com/mozilla-b2g/B2G $MANIFEST - -# Ensure symlink has been created to gecko... -rm -f $WORKSPACE/B2G/gecko -ln -s $WORKSPACE/gecko $WORKSPACE/B2G/gecko - -### Install package dependencies -install-packages.sh $WORKSPACE/gecko - -debug_flag="" -if [ 0$B2G_DEBUG -ne 0 ]; then - debug_flag='--debug' -fi - -rm -rf $WORKSPACE/B2G/out/target/product/generic/tests/ - -gecko_objdir=/home/worker/objdir-gecko/objdir - -$WORKSPACE/gecko/testing/mozharness/scripts/b2g_build.py \ - --config b2g/taskcluster-emulator.py \ - "$debug_flag" \ - --disable-mock \ - --work-dir=$WORKSPACE/B2G \ - --log-level=debug \ - --target=$TARGET \ - --b2g-config-dir=$TARGET \ - --checkout-revision=$GECKO_HEAD_REV \ - --repo=$WORKSPACE/gecko \ - --gecko-objdir=$gecko_objdir - -# Move files into artifact locations! -mkdir -p $HOME/artifacts - -ls -lah $WORKSPACE/B2G/out -ls -lah $gecko_objdir/dist/ - -mv $WORKSPACE/B2G/sources.xml $HOME/artifacts/sources.xml -mv $WORKSPACE/B2G/out/target/product/generic/tests/gaia-tests.zip $HOME/artifacts/gaia-tests.zip -for name in common cppunittest reftest mochitest xpcshell web-platform; do - mv $gecko_objdir/dist/*.$name.tests.zip $HOME/artifacts/target.$name.tests.zip ; -done -mv $gecko_objdir/dist/b2g-*.test_packages.json $HOME/artifacts/target.test_packages.json -mv $WORKSPACE/B2G/out/emulator.tar.gz $HOME/artifacts/emulator.tar.gz -mv $gecko_objdir/dist/b2g-*.crashreporter-symbols.zip $HOME/artifacts/b2g-crashreporter-symbols.zip -mv $gecko_objdir/dist/mozharness.zip $HOME/artifacts/mozharness.zip - -ccache -s diff --git a/taskcluster/scripts/builder/build-mulet-haz-linux.sh b/taskcluster/scripts/builder/build-mulet-haz-linux.sh deleted file mode 100755 index 7e6ec7120b29..000000000000 --- a/taskcluster/scripts/builder/build-mulet-haz-linux.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash -ex - -################################### build-mulet-haz-linux.sh ################################### -# Ensure all the scripts in this dir are on the path.... -DIRNAME=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) -PATH=$DIRNAME:$PATH -WORKSPACE=$( cd "$1" && pwd ) -export TOOLTOOL_DIR="$WORKSPACE" - -. desktop-setup.sh -. hazard-analysis.sh - -build_js_shell - -configure_analysis "$WORKSPACE/analysis" -run_analysis "$WORKSPACE/analysis" b2g - -# Artifacts folder is outside of the cache. -mkdir -p $HOME/artifacts/ || true - -grab_artifacts "$WORKSPACE/analysis" "$HOME/artifacts" -check_hazards "$WORKSPACE/analysis" - -################################### script end ################################### diff --git a/taskcluster/scripts/builder/build-mulet-linux.sh b/taskcluster/scripts/builder/build-mulet-linux.sh deleted file mode 100755 index a5b9e9d86bbb..000000000000 --- a/taskcluster/scripts/builder/build-mulet-linux.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/bash -ex - -################################### build-mulet-linux.sh ################################### -# Ensure all the scripts in this dir are on the path.... -DIRNAME=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) -PATH=$DIRNAME:$PATH - -. desktop-setup.sh - -# use "simple" package names so that they can be hard-coded in the task's -# extras.locations -export MOZ_SIMPLE_PACKAGE_NAME=target - -cd $GECKO_DIR -./mach build; - -### Make package -cd $MOZ_OBJDIR; -make package package-tests buildsymbols; - -### Extract artifacts -# Navigate to dist/ folder -cd $MOZ_OBJDIR/dist; - -ls -lah $MOZ_OBJDIR/dist/ - -# Artifacts folder is outside of the cache. -mkdir -p $HOME/artifacts/ - -# Discard version numbers from packaged files, they just make it hard to write -# the right filename in the task payload where artifacts are declared -mv target.* $HOME/artifacts -mv mozharness.zip $HOME/artifacts/mozharness.zip - -ccache -s - -################################### build.sh ################################### diff --git a/taskcluster/scripts/builder/build-simulator.sh b/taskcluster/scripts/builder/build-simulator.sh deleted file mode 100755 index dc9758a7dc24..000000000000 --- a/taskcluster/scripts/builder/build-simulator.sh +++ /dev/null @@ -1,196 +0,0 @@ -#!/bin/bash - -usage() { - echo "Usage: $0 GECKO_DIR GAIA_DIR MULET_TARBALL_URL [--release]" - echo " --release" - echo " use xpi name with version and platform" -} - -if [ "$#" -lt 3 ]; then - usage - exit -fi - -if [ -z $1 ] || [ ! -d $1 ]; then - usage - echo "First argument should be path to a gecko checkout" - exit -fi -GECKO_DIR=$1 - -if [ -z $2 ] || [ ! -d $2 ]; then - usage - echo "Second argument should be path to a gaia checkout" - exit -fi -GAIA_DIR=$2 - -url_re='^(http|https|ftp)://.*(tar.bz2|zip|dmg)' -if [ -z $3 ] || ! [[ $3 =~ $url_re ]] && ! [ -f $3 ] ; then - usage - echo "Third argument should be URL or a path to mulet tarball" - exit -fi -MULET=$3 - -RELEASE= -if [ "$4" == "--release" ]; then - RELEASE=1 -fi - -if [[ $MULET =~ 'linux-x86_64' ]] ; then - PLATFORM=linux64 -elif [[ $MULET =~ 'linux' ]] ; then - PLATFORM=linux -elif [[ $MULET =~ 'win32' ]] ; then - PLATFORM=win32 -elif [[ $MULET =~ 'mac' ]] ; then - PLATFORM=mac64 -fi -if [ -z $PLATFORM ]; then - echo "Unable to compute platform out of mulet package filename: $MULET" - exit -fi -echo "PLATFORM: $PLATFORM" - -VERSION=$(sed -nE "s/MOZ_B2G_VERSION=([0-9]+\.[0-9]+).*prerelease/\1/p" $GECKO_DIR/b2g/confvars.sh) -re='^[0-9]\.[0-9]$' -if ! [[ $VERSION =~ $re ]] ; then - echo "Invalid b2g version: $VERSION" - exit -fi -echo "B2G VERSION: $VERSION" - -set -ex - -WORK_DIR=simulator - -rm -rf $WORK_DIR/ -mkdir -p $WORK_DIR - -# If mulet isn't a file, that's an URL and needs to be downloaded first -if [ ! -f $MULET ]; then - URL=$MULET - MULET=$WORK_DIR/$(basename $URL) - wget -O $MULET $URL -fi - -# Compute absolute path for all path variables -realpath() { - [[ $1 = /* ]] && echo "$1" || echo "$PWD/${1#./}" -} -MULET=$(realpath $MULET) -WORK_DIR=$(realpath $WORK_DIR) -GAIA_DIR=$(realpath $GAIA_DIR) -GECKO_DIR=$(realpath $GECKO_DIR) -SIM_DIR=$(realpath $GECKO_DIR/b2g/simulator) -ADDON_DIR=$(realpath $WORK_DIR/addon) - -mkdir -p $ADDON_DIR - -# Uncompress the Mulet package -if [[ $MULET =~ .dmg$ ]]; then - mkdir -p $WORK_DIR/dmg - if [ "$(uname)" == "Darwin" ]; then - hdiutil attach -verbose -noautoopen -mountpoint $WORK_DIR/dmg "$MULET" - # Wait for files to show up - # hdiutil uses a helper process, diskimages-helper, which isn't always done its - # work by the time hdiutil exits. So we wait until something shows up in the - # mnt directory. Due to the async nature of diskimages-helper, the best thing - # we can do is to make sure the glob() rsync is making can find files. - i=0 - TIMEOUT=900 - while [ "$(echo $WORK_DIR/dmg/*)" == "$WORK_DIR/dmg/*" ]; do - if [ $i -gt $TIMEOUT ]; then - echo "Unable to mount dmg file." - exit 1 - fi - sleep 1 - i=$(expr $i + 1) - done - # Now we can copy everything out of the $MOUNTPOINT directory into the target directory - mkdir -p $ADDON_DIR/firefox - # Try builds are not branded as Firefox - if [ -d $WORK_DIR/dmg/Nightly.app ]; then - cp -r $WORK_DIR/dmg/Nightly.app $ADDON_DIR/firefox/FirefoxNightly.app - else - cp -r $WORK_DIR/dmg/FirefoxNightly.app $ADDON_DIR/firefox/ - fi - hdiutil detach $WORK_DIR/DMG - else - 7z x -o$WORK_DIR/dmg $MULET - mkdir -p $WORK_DIR/dmg/hfs - sudo mount -o loop,ro -t hfsplus $WORK_DIR/dmg/2.hfs $WORK_DIR/dmg/hfs - mkdir -p $ADDON_DIR/firefox - # Try builds are not branded as Firefox - if [ -d $WORK_DIR/dmg/hfs/Nightly.app ]; then - cp -r $WORK_DIR/dmg/hfs/Nightly.app $ADDON_DIR/firefox/FirefoxNightly.app - else - cp -r $WORK_DIR/dmg/hfs/FirefoxNightly.app $ADDON_DIR/firefox/ - fi - sudo umount $WORK_DIR/dmg/hfs - fi - rm -rf $WORK_DIR/dmg -elif [[ $MULET =~ .zip$ ]]; then - unzip $MULET -d $ADDON_DIR/ -elif [[ $MULET =~ .tar.bz2 ]]; then - (cd $ADDON_DIR/ && tar jxvf $MULET) -else - echo "Unsupported file extension for $MULET" - exit -fi - -# Build a gaia profile specific to the simulator in order to: -# - disable the FTU -# - set custom prefs to enable devtools debugger server -# - set custom settings to disable lockscreen and screen timeout -# - only ship production apps -NOFTU=1 GAIA_APP_TARGET=production SETTINGS_PATH=$SIM_DIR/custom-settings.json make -j1 -C $GAIA_DIR profile -mv $GAIA_DIR/profile $ADDON_DIR/ -cat $SIM_DIR/custom-prefs.js >> $ADDON_DIR/profile/user.js - -if [ -f $ADDON_DIR/firefox/application.ini ]; then - APPLICATION_INI=$ADDON_DIR/firefox/application.ini -elif [ -f $ADDON_DIR/firefox/FirefoxNightly.app/Contents/Resources/application.ini ]; then - APPLICATION_INI=$ADDON_DIR/firefox/FirefoxNightly.app/Contents/Resources/application.ini -else - echo "Unable to find application.ini file" - exit -fi -MOZ_BUILDID=$(sed -n "s/BuildID=\([0-9]\{8\}\)/\1/p" $APPLICATION_INI) -echo "BUILDID $MOZ_BUILDID -- VERSION $VERSION" - -XPI_NAME=fxos-simulator-$VERSION.$MOZ_BUILDID-$PLATFORM.xpi -ADDON_ID=fxos_$(echo $VERSION | sed "s/\./_/")_simulator@mozilla.org -ADDON_VERSION=$VERSION.$MOZ_BUILDID -ADDON_NAME="Firefox OS $VERSION Simulator" -ADDON_DESCRIPTION="a Firefox OS $VERSION Simulator" - -echo "ADDON_ID: $ADDON_ID" -echo "ADDON_VERSION: $ADDON_VERSION" - -FTP_ROOT_PATH=/pub/mozilla.org/labs/fxos-simulator -UPDATE_PATH=$VERSION/$PLATFORM -UPDATE_LINK=https://ftp.mozilla.org$FTP_ROOT_PATH/$UPDATE_PATH/$XPI_NAME -UPDATE_URL=https://ftp.mozilla.org$FTP_ROOT_PATH/$UPDATE_PATH/update.rdf - -# Replace all template string in install.rdf -sed -e "s/@ADDON_VERSION@/$ADDON_VERSION/" \ - -e "s/@ADDON_ID@/$ADDON_ID/" \ - -e "s#@ADDON_UPDATE_URL@#$UPDATE_URL#" \ - -e "s/@ADDON_NAME@/$ADDON_NAME/" \ - -e "s/@ADDON_DESCRIPTION@/$ADDON_DESCRIPTION/" \ - $SIM_DIR/install.rdf.in > $ADDON_DIR/install.rdf - -# copy all useful addon file -cp $SIM_DIR/icon.png $ADDON_DIR/ -cp $SIM_DIR/icon64.png $ADDON_DIR/ - -# Create the final zip .xpi file -mkdir -p artifacts -FILE_NAME=fxos-simulator.xpi -if [ "$RELEASE" ]; then - FILE_NAME=$XPI_NAME -fi -(cd $ADDON_DIR && zip -r - .) > artifacts/$FILE_NAME - diff --git a/taskcluster/scripts/builder/gaia_props.py b/taskcluster/scripts/builder/gaia_props.py deleted file mode 100755 index c6923391d82f..000000000000 --- a/taskcluster/scripts/builder/gaia_props.py +++ /dev/null @@ -1,41 +0,0 @@ -#! /usr/bin/env python2.7 - -''' -Command line interface to fetch details from the b2g/config/gaia.json properties -file used to link a particular version of gaia to gecko. -''' - -import argparse -import os -import json -import sys -import urlparse - -parser = argparse.ArgumentParser( - description='Get various information about gaia version tied to particular \ - gecko') - -parser.add_argument('gecko', metavar="GECKO_DIR", help="Path to gecko revision") -parser.add_argument('prop', help="Property type", - choices=['repository', 'revision']) - -args = parser.parse_args() - -if not os.path.isdir(args.gecko): - print >> sys.stderr, 'Given gecko path is not a directory' - sys.exit(1) - -props_path = os.path.join(args.gecko, 'b2g/config/gaia.json') - -if not os.path.isfile(props_path): - print >> sys.stderr, \ - 'Gecko directory does not contain b2g/config/gaia.json' - sys.exit(1) - -props = json.load(open(props_path)) - -if args.prop == 'revision': - print(props['revision']) - -if args.prop == 'repository': - print(urlparse.urljoin('https://hg.mozilla.org', props['repo_path'])) diff --git a/taskcluster/scripts/builder/pull-gaia.sh b/taskcluster/scripts/builder/pull-gaia.sh deleted file mode 100755 index 1873e82af3f4..000000000000 --- a/taskcluster/scripts/builder/pull-gaia.sh +++ /dev/null @@ -1,14 +0,0 @@ -#! /bin/bash -e - -# Ensure all the scripts in this dir are on the path.... -DIRNAME=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) -PATH=$DIRNAME:$PATH - -gecko_dir=$1 -target=$2 -gaia_props=$3 - -gaia_repo=$($gaia_props $gecko_dir repository) -gaia_rev=$($gaia_props $gecko_dir revision) - -tc-vcs checkout $target $gaia_repo $gaia_repo $gaia_rev diff --git a/taskcluster/scripts/phone-builder/build-dolphin.sh b/taskcluster/scripts/phone-builder/build-dolphin.sh deleted file mode 100755 index 5d6445b76990..000000000000 --- a/taskcluster/scripts/phone-builder/build-dolphin.sh +++ /dev/null @@ -1,36 +0,0 @@ -#! /bin/bash -vex - -. pre-build.sh - -debug_flag="" -if [ 0$B2G_DEBUG -ne 0 ]; then - debug_flag='--debug' -fi - -$WORKSPACE/gecko/testing/mozharness/scripts/b2g_build.py \ - --config b2g/taskcluster-phone.py \ - "$debug_flag" \ - --disable-mock \ - --variant=$VARIANT \ - --work-dir=$WORKSPACE/B2G \ - --gaia-languages-file $WORKSPACE/B2G/device/sprd/scx15/languages.json \ - --log-level=debug \ - --target=$TARGET \ - --b2g-config-dir=$TARGET \ - --checkout-revision=$GECKO_HEAD_REV \ - --base-repo=$GECKO_BASE_REPOSITORY \ - --repo=$GECKO_HEAD_REPOSITORY - -# Don't cache backups -rm -rf $WORKSPACE/B2G/backup-* - -# Move files into artifact locations! -mkdir -p $HOME/artifacts - -mv $WORKSPACE/B2G/upload/sources.xml $HOME/artifacts/sources.xml -mv $WORKSPACE/B2G/upload/b2g-*.crashreporter-symbols.zip $HOME/artifacts/b2g-crashreporter-symbols.zip -mv $WORKSPACE/B2G/upload/b2g-*.android-arm.tar.gz $HOME/artifacts/b2g-android-arm.tar.gz -mv $WORKSPACE/B2G/upload/${TARGET}.zip $HOME/artifacts/${TARGET}.zip -mv $WORKSPACE/B2G/upload/gaia.zip $HOME/artifacts/gaia.zip - -ccache -s diff --git a/taskcluster/scripts/phone-builder/build-phone-ota.sh b/taskcluster/scripts/phone-builder/build-phone-ota.sh deleted file mode 100755 index 7c1f44f5dc23..000000000000 --- a/taskcluster/scripts/phone-builder/build-phone-ota.sh +++ /dev/null @@ -1,42 +0,0 @@ -#! /bin/bash -vex - -. pre-build.sh - -if [ $TARGET == "aries" -o $TARGET == "shinano" ]; then - # caching objects might be dangerous for some devices (aka aries) - rm -rf $gecko_objdir - rm -rf $WORKSPACE/B2G/out -fi - -PLATFORM=${TARGET%%-*} - -# We need different platform names for each variant (user, userdebug and -# eng). We do not append variant suffix for "user" to keep compability with -# verions already installed in the phones. -if [ 0$DOGFOOD -ne 1 -a $VARIANT != "user" ]; then - PLATFORM=$PLATFORM-$VARIANT -fi - -MOZHARNESS_CONFIG=${MOZHARNESS_CONFIG:=b2g/taskcluster-phone-ota.py} - -rm -rf $WORKSPACE/B2G/upload-public/ -rm -rf $WORKSPACE/B2G/upload/ - -$WORKSPACE/gecko/testing/mozharness/scripts/b2g_build.py \ - --config $MOZHARNESS_CONFIG \ - "$debug_flag" \ - --disable-mock \ - --variant=$VARIANT \ - --work-dir=$WORKSPACE/B2G \ - --gaia-languages-file locales/languages_all.json \ - --log-level=debug \ - --target=$TARGET \ - --b2g-config-dir=$TARGET \ - --checkout-revision=$GECKO_HEAD_REV \ - --repo=$WORKSPACE/gecko \ - --platform $PLATFORM \ - --gecko-objdir=$gecko_objdir \ - --branch=$(basename $GECKO_HEAD_REPOSITORY) \ - --complete-mar-url https://queue.taskcluster.net/v1/task/$TASK_ID/runs/$RUN_ID/artifacts/public/build/ - -. post-build.sh diff --git a/taskcluster/scripts/phone-builder/build-phone.sh b/taskcluster/scripts/phone-builder/build-phone.sh deleted file mode 100755 index 4901280801ce..000000000000 --- a/taskcluster/scripts/phone-builder/build-phone.sh +++ /dev/null @@ -1,29 +0,0 @@ -#! /bin/bash -vex - -. pre-build.sh - -if [ $TARGET == "aries" -o $TARGET == "shinano" ]; then - # caching objects might be dangerous for some devices (aka aries) - rm -rf $gecko_objdir - rm -rf $WORKSPACE/B2G/out -fi - -MOZHARNESS_CONFIG=${MOZHARNESS_CONFIG:=b2g/taskcluster-phone.py} - -rm -rf $WORKSPACE/B2G/upload/ - -$WORKSPACE/gecko/testing/mozharness/scripts/b2g_build.py \ - --config $MOZHARNESS_CONFIG \ - "$debug_flag" \ - --disable-mock \ - --variant=$VARIANT \ - --work-dir=$WORKSPACE/B2G \ - --gaia-languages-file locales/languages_all.json \ - --log-level=debug \ - --target=$TARGET \ - --b2g-config-dir=$TARGET \ - --checkout-revision=$GECKO_HEAD_REV \ - --repo=$WORKSPACE/gecko \ - --gecko-objdir=$gecko_objdir - -. post-build.sh diff --git a/taskcluster/scripts/phone-builder/post-build.sh b/taskcluster/scripts/phone-builder/post-build.sh deleted file mode 100755 index b3a64e263c04..000000000000 --- a/taskcluster/scripts/phone-builder/post-build.sh +++ /dev/null @@ -1,49 +0,0 @@ -#! /bin/bash -vex - -# Don't cache backups -rm -rf $WORKSPACE/B2G/backup-* - -if [ -f balrog_credentials ]; then - rm -f balrog_credentials -fi - -mkdir -p $HOME/artifacts -mkdir -p $HOME/artifacts-public - -DEVICE=${TARGET%%-*} - -mv $WORKSPACE/B2G/upload/sources.xml $HOME/artifacts/sources.xml -mv $WORKSPACE/B2G/upload/b2g-*.linux-androideabi-arm.tar.gz $HOME/artifacts/b2g-android-arm.tar.gz -mv $WORKSPACE/B2G/upload/${TARGET}.zip $HOME/artifacts/${TARGET}.zip -mv $WORKSPACE/B2G/upload/gaia.zip $HOME/artifacts/gaia.zip - -# Upload public images as public artifacts for Nexus 5 L -if [ "${TARGET}" = "nexus-5-l" ]; then - mv $HOME/artifacts/${TARGET}.zip $HOME/artifacts-public/ -fi - -if [ -f $WORKSPACE/B2G/upload/b2g-*.crashreporter-symbols.zip ]; then - mv $WORKSPACE/B2G/upload/b2g-*.crashreporter-symbols.zip $HOME/artifacts/b2g-crashreporter-symbols.zip -fi - -if [ -f $WORKSPACE/B2G/upload-public/*.blobfree-dist.zip ]; then - mv $WORKSPACE/B2G/upload-public/*.blobfree-dist.zip $HOME/artifacts-public/ -fi - -# FOTA full and fullimg might contain blobs -if [ -f $WORKSPACE/B2G/upload/fota-*-update-*.mar ]; then - mv $WORKSPACE/B2G/upload/fota-*-update-*.mar $HOME/artifacts/ -fi - -# Gecko/Gaia OTA is clean -if [ -f $WORKSPACE/B2G/upload-public/b2g-*-gecko-update.mar ]; then - mv $WORKSPACE/B2G/upload-public/b2g-*-gecko-update.mar $HOME/artifacts-public/ -fi - -# Gecko/Gaia FOTA is clean -if [ -f $WORKSPACE/B2G/upload-public/fota-*-update.mar ]; then - mv $WORKSPACE/B2G/upload-public/fota-*-update.mar $HOME/artifacts-public/ -fi - -ccache -s - diff --git a/taskcluster/scripts/phone-builder/pre-build.sh b/taskcluster/scripts/phone-builder/pre-build.sh deleted file mode 100755 index 12b8b33576dc..000000000000 --- a/taskcluster/scripts/phone-builder/pre-build.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -vex - -# Ensure all the scripts in this dir are on the path.... -DIRNAME=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) -PATH=$DIRNAME:$PATH - -WORKSPACE=$1 - -gecko_objdir=/home/worker/objdir-gecko/objdir - -### Check that require variables are defined -test -d $WORKSPACE -test $GECKO_HEAD_REPOSITORY # Should be an hg repository url to pull from -test $GECKO_BASE_REPOSITORY # Should be an hg repository url to clone from -test $GECKO_HEAD_REV # Should be an hg revision to pull down -test $TARGET -test $VARIANT - -. ../builder/setup-ccache.sh - -# Figure out where the remote manifest is so we can use caches for it. -MANIFEST=$(repository-url.py $GECKO_HEAD_REPOSITORY $GECKO_HEAD_REV b2g/config/$TARGET/sources.xml) -tc-vcs repo-checkout $WORKSPACE/B2G https://github.com/mozilla-b2g/B2G $MANIFEST - -# Ensure symlink has been created to gecko... -rm -f $WORKSPACE/B2G/gecko -ln -s $WORKSPACE/gecko $WORKSPACE/B2G/gecko - -debug_flag="" -if [ 0$B2G_DEBUG -ne 0 ]; then - debug_flag='--debug' -fi - diff --git a/taskcluster/taskgraph/transforms/gecko_v2_whitelist.py b/taskcluster/taskgraph/transforms/gecko_v2_whitelist.py index 4c099346444f..dfa58e9f2864 100644 --- a/taskcluster/taskgraph/transforms/gecko_v2_whitelist.py +++ b/taskcluster/taskgraph/transforms/gecko_v2_whitelist.py @@ -45,9 +45,6 @@ JOB_NAME_WHITELIST = set([ 'macosx64-debug', 'macosx64-opt', 'macosx64-st-an-opt', - 'mulet-dbg', - 'mulet-haz-debug', - 'mulet-opt', 'nexus-5-l-eng-debug', 'nexus-5-l-eng-opt', 'shell-haz-debug', diff --git a/taskcluster/taskgraph/transforms/job/mulet.py b/taskcluster/taskgraph/transforms/job/mulet.py deleted file mode 100644 index 8459384ee034..000000000000 --- a/taskcluster/taskgraph/transforms/job/mulet.py +++ /dev/null @@ -1,105 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -""" -Support for running mulet tasks via build-mulet-linux.sh -""" - -from __future__ import absolute_import, print_function, unicode_literals - -import time -from voluptuous import Schema, Required - -from taskgraph.transforms.job import run_job_using -from taskgraph.transforms.job.common import ( - docker_worker_add_workspace_cache, - docker_worker_add_tc_vcs_cache, - docker_worker_add_gecko_vcs_env_vars, - docker_worker_add_public_artifacts -) - -COALESCE_KEY = 'builds.{project}.{name}' - -build_mulet_linux_schema = Schema({ - Required('using'): 'mach-via-build-mulet-linux.sh', - - # The pathname of the mozconfig to use - Required('mozconfig'): basestring, - - # The tooltool manifest to use - Required('tooltool-manifest'): basestring, -}) - - -@run_job_using("docker-worker", "mach-via-build-mulet-linux.sh", schema=build_mulet_linux_schema) -def docker_worker_make_via_build_mulet_linux_sh(config, job, taskdesc): - run = job['run'] - worker = taskdesc.get('worker') - - # assumes the builder image (which contains the gecko checkout command) - taskdesc['worker']['docker-image'] = {"in-tree": "builder"} - - worker['taskcluster-proxy'] = False - - docker_worker_add_public_artifacts(config, job, taskdesc) - docker_worker_add_tc_vcs_cache(config, job, taskdesc) - docker_worker_add_workspace_cache(config, job, taskdesc) - docker_worker_add_gecko_vcs_env_vars(config, job, taskdesc) - - env = worker.setdefault('env', {}) - env.update({ - 'MOZ_BUILD_DATE': time.strftime("%Y%m%d%H%M%S", time.gmtime(config.params['pushdate'])), - 'MOZ_SCM_LEVEL': config.params['level'], - }) - - env['MOZCONFIG'] = run['mozconfig'] - - # tooltool downloads (not via relengapi proxy) - worker['caches'].append({ - 'type': 'persistent', - 'name': 'tooltool-cache', - 'mount-point': '/home/worker/tooltool-cache', - }) - env['TOOLTOOL_CACHE'] = '/home/worker/tooltool-cache' - env['TOOLTOOL_MANIFEST'] = run['tooltool-manifest'] - env['TOOLTOOL_REPO'] = 'https://github.com/mozilla/build-tooltool' - env['TOOLTOOL_REV'] = 'master' - - worker['command'] = [ - "/bin/bash", - "-c", - "checkout-gecko workspace" - " && cd ./workspace/gecko/taskcluster/scripts/builder" - " && buildbot_step 'Build' ./build-mulet-linux.sh $HOME/workspace", - ] - -mulet_simulator_schema = Schema({ - Required('using'): 'mulet-simulator', - - # The shell command to run with `bash -exc`. This will have parameters - # substituted for {..} and will be enclosed in a {task-reference: ..} block - # so it can refer to the parent task as - Required('shell-command'): basestring, -}) - - -@run_job_using("docker-worker", "mulet-simulator", schema=mulet_simulator_schema) -def docker_worker_mulet_simulator(config, job, taskdesc): - run = job['run'] - worker = taskdesc.get('worker') - - # assumes the builder image (which contains the gecko checkout command) - taskdesc['worker']['docker-image'] = {"in-tree": "builder"} - - worker['taskcluster-proxy'] = False - - docker_worker_add_public_artifacts(config, job, taskdesc) - docker_worker_add_gecko_vcs_env_vars(config, job, taskdesc) - - shell_command = run['shell-command'].format(**config.params) - - worker['command'] = [ - "/bin/bash", - "-exc", - {'task-reference': shell_command}, - ] diff --git a/taskcluster/taskgraph/transforms/job/phone_builder.py b/taskcluster/taskgraph/transforms/job/phone_builder.py deleted file mode 100644 index 8ce5444d5f7f..000000000000 --- a/taskcluster/taskgraph/transforms/job/phone_builder.py +++ /dev/null @@ -1,88 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -""" -Support for running phone-builder tasks via the phone-builder script. -""" - -from __future__ import absolute_import, print_function, unicode_literals - -import time -from voluptuous import Schema, Required - -from taskgraph.transforms.job import run_job_using -from taskgraph.transforms.job.common import ( - docker_worker_add_gecko_vcs_env_vars, - docker_worker_add_tc_vcs_cache -) - -phone_builder_linux_schema = Schema({ - Required('using'): 'phone-builder', - - # if true, this is a debug run - Required('debug', default=False): bool, - - # the TARGET to run - Required('target'): basestring, -}) - - -@run_job_using("docker-worker", "phone-builder", schema=phone_builder_linux_schema) -def docker_worker_phone_builder(config, job, taskdesc): - run = job['run'] - worker = taskdesc.get('worker') - - worker['artifacts'] = [{ - 'name': 'private/build', - 'path': '/home/worker/artifacts/', - 'type': 'directory', - }, { - 'name': 'public/build', - 'path': '/home/worker/artifacts-public/', - 'type': 'directory', - }] - - docker_worker_add_tc_vcs_cache(config, job, taskdesc) - docker_worker_add_gecko_vcs_env_vars(config, job, taskdesc) - - if config.params['project'] != 'try': - taskdesc['worker']['caches'].append({ - 'type': 'persistent', - 'name': 'level-{}-{}-build-{}-{}'.format( - config.params['level'], config.params['project'], - taskdesc['attributes']['build_platform'], - taskdesc['attributes']['build_type'],), - 'mount-point': "/home/worker/workspace", - }) - taskdesc['worker']['caches'].append({ - 'type': 'persistent', 'name': - 'level-{}-{}-build-{}-{}-objdir-gecko'.format( - config.params['level'], config.params['project'], - taskdesc['attributes']['build_platform'], - taskdesc['attributes']['build_type'],), - 'mount-point': "/home/worker/objdir-gecko", - }) - - env = worker.setdefault('env', {}) - env.update({ - 'MOZHARNESS_CONFIG': 'b2g/taskcluster-phone-eng.py', - 'MOZ_BUILD_DATE': time.strftime("%Y%m%d%H%M%S", time.gmtime(config.params['pushdate'])), - 'TARGET': run['target'], - }) - if run['debug']: - env['B2G_DEBUG'] = '1' - - # tooltool downloads - worker['relengapi-proxy'] = True - taskdesc['scopes'].extend([ - 'docker-worker:relengapi-proxy:tooltool.download.internal', - 'docker-worker:relengapi-proxy:tooltool.download.public', - ]) - - worker['command'] = [ - "/bin/bash", - "-c", - "checkout-gecko workspace" - " && cd ./workspace/gecko/taskcluster/scripts/phone-builder" - " && buildbot_step 'Build' ./build-phone.sh $HOME/workspace", - ] diff --git a/taskcluster/taskgraph/transforms/task.py b/taskcluster/taskgraph/transforms/task.py index a8b8a2d8f146..f63a7d1a5e71 100644 --- a/taskcluster/taskgraph/transforms/task.py +++ b/taskcluster/taskgraph/transforms/task.py @@ -86,7 +86,7 @@ task_description_schema = Schema({ # if omitted, the build will not be indexed. Optional('index'): { # the name of the product this build produces - 'product': Any('firefox', 'mobile', 'b2g'), + 'product': Any('firefox', 'mobile'), # the names to use for this job in the TaskCluster index 'job-name': Any( @@ -267,7 +267,6 @@ GROUP_NAMES = { 'tc-W-e10s': 'Web platform tests executed by TaskCluster with e10s', 'tc-X': 'Xpcshell tests executed by TaskCluster', 'tc-X-e10s': 'Xpcshell tests executed by TaskCluster with e10s', - 'tc-Sim': 'Mulet simulator runs', 'Aries': 'Aries Device Image', 'Nexus 5-L': 'Nexus 5-L Device Image', 'Cc': 'Toolchain builds', diff --git a/taskcluster/taskgraph/try_option_syntax.py b/taskcluster/taskgraph/try_option_syntax.py index 6e44a650da31..b5988db981c0 100644 --- a/taskcluster/taskgraph/try_option_syntax.py +++ b/taskcluster/taskgraph/try_option_syntax.py @@ -31,7 +31,6 @@ BUILD_KINDS = set([ 'valgrind', 'static-analysis', 'spidermonkey', - 'b2g-device', ]) # anything in this list is governed by -j diff --git a/testing/docker/b2g-build/Dockerfile b/testing/docker/b2g-build/Dockerfile deleted file mode 100644 index c2d5b1061261..000000000000 --- a/testing/docker/b2g-build/Dockerfile +++ /dev/null @@ -1,147 +0,0 @@ -FROM centos:centos6 -MAINTAINER Dustin J. Mitchell - -# Run majority of yum installs here so we cache them! -COPY releng.repo /etc/yum.repos.d/releng.repo -RUN yum install -y epel-release && \ - yum update -y && \ - yum makecache && \ - yum install -y wget - -# Install updated curl libraries -RUN cd /tmp && \ - wget https://s3-us-west-2.amazonaws.com/test-caching/libcurl-7.29.0-19.el6.x86_64.rpm && \ - wget https://s3-us-west-2.amazonaws.com/test-caching/libcurl-devel-7.29.0-19.el6.x86_64.rpm && \ - wget https://s3-us-west-2.amazonaws.com/test-caching/curl-7.29.0-19.el6.x86_64.rpm && \ - yum install -y libcurl-7.29.0-19.el6.x86_64.rpm libcurl-devel-7.29.0-19.el6.x86_64.rpm curl-7.29.0-19.el6.x86_64.rpm && \ - rm -f libcurl-7.29.0-19.el6.x86_64.rpm libcurl-devel-7.29.0-19.el6.x86_64.rpm curl-7.29.0-19.el6.x86_64.rpm && \ - cd - - -RUN yum install -y \ - # From Building B2G docs - # cmake \ - # cmake: is disabled intentionally to work around: bug 1141417 - GConf2-devel \ - alsa-lib-devel \ - autoconf213 \ - bc \ - bison \ - bzip2 \ - ccache \ - dbus-devel \ - dbus-glib-devel \ - dbus-glib-devel \ - dbus-python \ - expat-devel \ - file \ - flex \ - gawk \ - gcc473_0moz1 \ - gettext-devel \ - glibc-devel \ - glibc-devel.i686 \ - glibc-static \ - gstreamer-devel \ - gstreamer-plugins-base-devel \ - gtk2-devel \ - install \ - iw \ - libX11-devel \ - libX11-devel.i686 \ - libXrandr.i686 \ - libXt-devel \ - libnotify-devel \ - libstdc++-static \ - libstdc++-static \ - libstdc++.i686 \ - make \ - mesa-libGL-devel \ - mesa-libGL-devel.i686 \ - mozilla-python27 \ - mpfr-devel.x86_64 \ - ncurses-devel.i686 \ - ncurses:-devel \ - openssh-clients \ - openssl-devel \ - openssl-devel \ - patch \ - perl-DBI \ - perl-Digest-SHA \ - perl-ExtUtils-MakeMaker \ - pulseaudio-libs-devel \ - readline-devel.i686 \ - rsync \ - screen \ - subversion-perl \ - tar \ - tcl \ - tk \ - unzip \ - uuid \ - vim \ - wireless-tools-devel \ - xorg-x11-server-Xvfb \ - xorg-x11-server-utils \ - xz \ - yasm \ - zip \ - zlib-devel \ - zlib-devel.i686 && \ - # Remove cached packages. Cached package takes up a lot of space and - # distributing them to workers is wasteful. - yum clean all - -RUN mkdir -p /home/worker/bin -COPY bin/repository-url.py /home/worker/bin/repository-url.py - -ENV GCC_PATH /home/worker/workspace/gecko/gcc - -# Default to mozilla specific python, etc... -ENV PATH /tools/python27-mercurial/bin:/tools/python27/bin:$PATH -ENV PATH /tools/tools/buildfarm/utils:$PATH:/home/worker/bin/ -ENV PATH $GCC_PATH/bin:/tools/gcc-4.7.3-0moz1/bin:$PATH - -# Use the libstd++ we installed over all others... -env LD_LIBRARY_PATH=$GCC_PATH/lib64:$GCC_PATH/lib:/tools/gcc-4.7.3-0moz1/lib64:/tools/gcc-4.7.3-0moz1/lib - -RUN useradd -d /home/worker -s /bin/bash -m worker - -# Terrible symlink hacks so cc points to the gcc version we intend to use... -RUN ls -lah /tools/gcc-4.7.3-0moz1/bin && ln -s /tools/gcc-4.7.3-0moz1/bin/gcc /tools/gcc-4.7.3-0moz1/bin/cc - -# Terrible Hack to correctly install git-2.4.1 -RUN mkdir -p /tmp/git && cd /tmp/git && \ - curl -L https://s3-us-west-2.amazonaws.com/test-caching/git-2.4.1.tar.gz | tar -xz && \ - cd git* && \ - make prefix=/usr/local/ all -j10 && \ - make prefix=/usr/local/ install && \ - rm -Rf /tmp/git - -# Install node from node's own dist... -ENV NODE_VERSION v0.10.36 -RUN cd /usr/local/ && \ - curl https://nodejs.org/dist/$NODE_VERSION/node-$NODE_VERSION-linux-x64.tar.gz | tar -xz --strip-components 1 && \ - node -v - -RUN wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz && \ - tar -xvf setuptools-1.4.2.tar.gz && \ - cd setuptools-1.4.2 && python setup.py install && \ - cd - && rm -rf setuptools-1.4.2* && \ - curl https://bootstrap.pypa.io/get-pip.py | python - && \ - pip install virtualenv mercurial - -# Generate machine uuid file -RUN dbus-uuidgen --ensure=/var/lib/dbus/machine-id - -# Set variable normally configured at login, by the shells parent process, these -# are taken from GNU su manual -ENV HOME /home/worker -ENV SHELL /bin/bash -ENV USER worker -ENV LOGNAME worker - -# Declare default working folder -WORKDIR /home/worker - -# Set a default command useful for debugging -CMD ["/bin/bash", "--login"] diff --git a/testing/docker/b2g-build/VERSION b/testing/docker/b2g-build/VERSION deleted file mode 100644 index d3b5ba4bfc3a..000000000000 --- a/testing/docker/b2g-build/VERSION +++ /dev/null @@ -1 +0,0 @@ -0.2.11 diff --git a/testing/docker/b2g-build/bin/repository-url.py b/testing/docker/b2g-build/bin/repository-url.py deleted file mode 100755 index 7eb0e12700fa..000000000000 --- a/testing/docker/b2g-build/bin/repository-url.py +++ /dev/null @@ -1,28 +0,0 @@ -#! /usr/bin/env python - -import argparse - -def repo_url(remote, revision, path): - ''' - Construct a url pointing to the _raw_ file in the given remote this function - will handle url construction for both hg and github. - ''' - - # Ensure remote always ends in a slash... - if remote[-1] != '/': - remote = remote + '/' - if 'hg.mozilla.org' in remote: - return '{}raw-file/{}/{}'.format(remote, revision, path); - else: - return '{}raw/{}/{}'.format(remote, revision, path); - -parser = argparse.ArgumentParser( - description='Get url for raw file in remote repository' -) - -parser.add_argument('remote', help='URL for remote repository') -parser.add_argument('revision', help='Revision in remote repository') -parser.add_argument('path', help='Path to file in remote repository') - -args = parser.parse_args() -print(repo_url(args.remote, args.revision, args.path)) diff --git a/testing/docker/b2g-build/releng.repo b/testing/docker/b2g-build/releng.repo deleted file mode 100644 index e042d9d825b9..000000000000 --- a/testing/docker/b2g-build/releng.repo +++ /dev/null @@ -1,6 +0,0 @@ -[releng] -name=releng -descr=releng-specific packages from mockbuild-repos -baseurl=http://mockbuild-repos.pub.build.mozilla.org/releng/public/CentOS/6/x86_64 -enabled=1 -gpgcheck=0 diff --git a/testing/docker/builder/Dockerfile b/testing/docker/builder/Dockerfile deleted file mode 100644 index b2947d7da286..000000000000 --- a/testing/docker/builder/Dockerfile +++ /dev/null @@ -1,32 +0,0 @@ -FROM quay.io/mozilla/b2g-build:0.2.11 -MAINTAINER Dustin J. Mitchell - -ENV VERSION 1.2 -ENV PYTHONPATH /tools/tools/lib/python:$PYTHONPATH -ENV TOOLTOOL_CACHE /home/worker/tools/tooltool-cache - -ADD https://raw.githubusercontent.com/taskcluster/buildbot-step/19219c470bd95b390ed0b31d4bf455169bf12fca/buildbot_step.js /home/worker/bin/buildbot_step - -# Add utilities and configuration -RUN mkdir -p /home/worker/bin /home/worker/tools -# Add bin tools last as they are most likely to change -RUN chown -R worker:worker /home/worker/* /home/worker/.* - -# Instal build tools -RUN hg clone http://hg.mozilla.org/build/tools/ /tools/tools && \ - cd /tools/tools && \ - python setup.py install - -# Initialize git (makes repo happy) -RUN git config --global user.email "mozilla@example.com" && \ - git config --global user.name "mozilla" - -# VCS Tools -RUN npm install -g taskcluster-vcs@2.3.17 - -# TODO enable worker -# TODO volume mount permissions will be an issue -# USER worker - -COPY bin /home/worker/bin -RUN chmod a+x /home/worker/bin/* diff --git a/testing/docker/builder/REGISTRY b/testing/docker/builder/REGISTRY deleted file mode 100644 index cb1e1bb482a2..000000000000 --- a/testing/docker/builder/REGISTRY +++ /dev/null @@ -1 +0,0 @@ -taskcluster diff --git a/testing/docker/builder/VERSION b/testing/docker/builder/VERSION deleted file mode 100644 index 964783a81194..000000000000 --- a/testing/docker/builder/VERSION +++ /dev/null @@ -1 +0,0 @@ -0.5.13 diff --git a/testing/docker/builder/bin/checkout-gecko b/testing/docker/builder/bin/checkout-gecko deleted file mode 100644 index e9d97aa8b6a3..000000000000 --- a/testing/docker/builder/bin/checkout-gecko +++ /dev/null @@ -1,16 +0,0 @@ -#! /bin/bash -ex - -# Ensure we have at least enough to check gecko out... -test $GECKO_BASE_REPOSITORY - -# Workspace to checkout gecko into... -WORKSPACE=$1 -mkdir -p $WORKSPACE - -# Note that tc-vcs requires only the first two arguments so others are optional. -# This is intended to make it easier to clone local directories. -buildbot_step "Clone gecko" tc-vcs checkout $WORKSPACE/gecko \ - $GECKO_BASE_REPOSITORY \ - $GECKO_HEAD_REPOSITORY \ - $GECKO_HEAD_REV \ - $GECKO_HEAD_REF diff --git a/testing/docker/builder/git.env b/testing/docker/builder/git.env deleted file mode 100644 index 9f23477a3571..000000000000 --- a/testing/docker/builder/git.env +++ /dev/null @@ -1,6 +0,0 @@ -GECKO_BASE_REPOSITORY=https://github.com/mozilla/gecko-dev -GECKO_HEAD_REPOSITORY=https://github.com/mozilla/gecko-dev -GECKO_HEAD_REF=master -GECKO_HEAD_REV=master -MOZHARNESS_REPOSITORY=http://hg.mozilla.org/build/mozharness -MOZHARNESS_REV=tip diff --git a/testing/docker/builder/mulet.env b/testing/docker/builder/mulet.env deleted file mode 100644 index 268bb8ee248c..000000000000 --- a/testing/docker/builder/mulet.env +++ /dev/null @@ -1,7 +0,0 @@ -GECKO_BASE_REPOSITORY=https://github.com/mozilla/gecko-dev -GECKO_HEAD_REPOSITORY=https://github.com/mozilla/gecko-dev -GECKO_HEAD_REF=master -GECKO_HEAD_REV=master -MOZHARNESS_REPOSITORY=http://hg.mozilla.org/build/mozharness -MOZHARNESS_REV=tip -MOZCONFIG=b2g/dev/config/mozconfigs/linux64/mulet diff --git a/testing/docker/phone-builder/Dockerfile b/testing/docker/phone-builder/Dockerfile deleted file mode 100644 index 2aad86ece22a..000000000000 --- a/testing/docker/phone-builder/Dockerfile +++ /dev/null @@ -1,17 +0,0 @@ -FROM taskcluster/builder:0.5.13 -MAINTAINER Wander Lairson Costa - -# Add utilities and configuration -ADD bin /home/worker/bin - -# Builds need the share module enabled -ADD hgrc /home/worker/.hgrc -RUN chown -R worker:worker /home/worker/.hgrc - -# Make sure we use our own config -COPY tc-vcs-config.yml /etc/taskcluster-vcs.yml - -RUN yum install -y bc lzop java-1.7.0-openjdk -RUN pip install awscli -RUN npm install -g bower gulp apm grunt-cli - diff --git a/testing/docker/phone-builder/bin/validate_task.py b/testing/docker/phone-builder/bin/validate_task.py deleted file mode 100755 index 13a3573c74b3..000000000000 --- a/testing/docker/phone-builder/bin/validate_task.py +++ /dev/null @@ -1,67 +0,0 @@ -#!/usr/bin/env python - -from __future__ import print_function -import os -import os.path -import json -import urllib2 -import sys -import re -import subprocess - -repo_matcher = re.compile(r'[a-z]+://(hg|git)\.mozilla\.org') - -def get_task(taskid): - return json.load(urllib2.urlopen('https://queue.taskcluster.net/v1/task/' + taskid)) - -def check_task(task): - payload = task['payload'] - - if 'GECKO_HEAD_REPOSITORY' not in payload['env']: - print('Task has no head gecko repository', file=sys.stderr) - return -1 - - repo = payload['env']['GECKO_HEAD_REPOSITORY'] - # if it is not a mozilla repository, fail - if not repo_matcher.match(repo): - print('Invalid head repository', repo, file=sys.stderr) - return -1 - - if 'GECKO_BASE_REPOSITORY' not in payload['env']: - print('Task has no base gecko repository', file=sys.stderr) - return -1 - - repo = payload['env']['GECKO_BASE_REPOSITORY'] - if not repo_matcher.match(repo): - print('Invalid base repository', repo, file=sys.stderr) - return -1 - - locations = task["extra"]["locations"] - if "img" in locations: - img = locations["img"] - if img.startswith("public"): - print('Cannot upload images to public', file=sys.stderr) - return -1 - - return 0 - -def main(): - taskid = os.getenv('TASK_ID') - - # If the task id is None, we assume we are running docker locally - if taskid is not None: - task = get_task(taskid) - ret = check_task(task) - if ret != 0: - return ret - - if len(sys.argv) > 1: - try: - return subprocess.call(sys.argv[1:], shell=True) - except subprocess.CalledProcessError as e: - return e.returncode - - return 0 - -if __name__ == '__main__': - sys.exit(main()) diff --git a/testing/docker/phone-builder/hgrc b/testing/docker/phone-builder/hgrc deleted file mode 100644 index 8ba4cf6680a2..000000000000 --- a/testing/docker/phone-builder/hgrc +++ /dev/null @@ -1,4 +0,0 @@ -[extensions] -share = -[ui] -username = TaskCluster diff --git a/testing/docker/phone-builder/tc-vcs-config.yml b/testing/docker/phone-builder/tc-vcs-config.yml deleted file mode 100644 index 5ad9680736e7..000000000000 --- a/testing/docker/phone-builder/tc-vcs-config.yml +++ /dev/null @@ -1,40 +0,0 @@ -# Default configuration used by the tc-vs tools these can be overridden by -# passing the config you wish to use over the command line... -git: git -hg: hg - -repoCache: - # Repo url to clone when running repo init.. - repoUrl: https://gerrit.googlesource.com/git-repo.git - # Version of repo to utilize... - repoRevision: master - # The root where all downloaded cache files are stored on the local machine... - cacheDir: '{{env.HOME}}/.tc-vcs-repo/' - # Name/prefixed used as part of the base url. - cacheName: sources/{{name}}.tar.gz - # Command used to upload the tarball - uploadTar: "curl --retry 5 --fail --header 'Content-Type: application/x-tar' --header 'Content-Encoding: gzip' -X PUT --data-binary @'{{source}}' '{{url}}'" - # Large http get requests are often slower using nodes built in http layer so - # we utilize a subprocess which is responsible for fetching... - get: curl --retry 5 --fail -L -o {{dest}} {{url}} - # Used to create clone tarball - compress: tar -czf {{dest}} {{source}} - # All cache urls use tar + gz this is the command used to extract those files - # downloaded by the "get" command. - extract: tar -x -z -C {{dest}} -f {{source}} - -cloneCache: - # The root where all downloaded cache files are stored on the local machine... - cacheDir: '{{env.HOME}}/.tc-vcs/' - # Command used to upload the tarball - uploadTar: "curl --retry 5 --fail --header 'Content-Type: application/x-tar' --header 'Content-Encoding: gzip' -X PUT --data-binary @'{{source}}' '{{url}}'" - # Large http get requests are often slower using nodes built in http layer so - # we utilize a subprocess which is responsible for fetching... - get: curl --retry 5 --fail -L -o {{dest}} {{url}} - # Used to create clone tarball - compress: tar -czf {{dest}} {{source}} - # All cache urls use tar + gz this is the command used to extract those files - # downloaded by the "get" command. - extract: tar -x -z --strip-components 1 -C {{dest}} -f {{source}} - # Name/prefixed used as part of the base url. - cacheName: clones/{{name}}.tar.gz diff --git a/testing/docker/phone-builder/tests/invalid_base_repo.yml b/testing/docker/phone-builder/tests/invalid_base_repo.yml deleted file mode 100644 index 79598a013208..000000000000 --- a/testing/docker/phone-builder/tests/invalid_base_repo.yml +++ /dev/null @@ -1,50 +0,0 @@ -taskId: 1 -task: - metadata: - source: http://todo.com/soon - owner: user@domain.com - name: B2G Emulator - description: B2G Emulator - - workerType: b2gbuild - provisionerId: aws-provisioner - - scopes: - - 'docker-worker:cache:build-emulator-objects' - - 'docker-worker:image:quay.io/mozilla/phone-builder:0.0.1' - - payload: - cache: - build-emulator-objects: '/home/worker/object-folder-flame-kk-1' - - env: - TARGET: 'flame-kk' - B2G_DEBUG: '1' - # revision/project params defined originally here https://github.com/taskcluster/taskcluster-try/blob/master/try/instantiate.js - REVISION: 'tip' - GECKO_HEAD_REPOSITORY: 'http://hg.mozilla.org/mozilla-central' - GECKO_BASE_REPOSITORY: 'git@github.com:mozilla/gecko-dev.git' - - image: 'quay.io/mozilla/phone-builder:0.0.1' - maxRunTime: 14400 - - command: - - build-phone.sh - - artifacts: - 'private/build': - type: directory - path: '/home/worker/artifacts/' - - extra: - # Rather then enforcing particular conventions we require that all build - # tasks provide the "build" extra field to specify where the build and tests - # files are located. - locations: - build: 'private/build/emulator.tar.gz' - tests: 'private/build/b2g-tests.zip' - symbols: 'private/build/b2g-crashreporter-symbols.zip' - sources: 'private/build/sources.xml' - - treeherder: - symbol: B diff --git a/testing/docker/phone-builder/tests/invalid_head_repo.yml b/testing/docker/phone-builder/tests/invalid_head_repo.yml deleted file mode 100644 index f9e2acf29914..000000000000 --- a/testing/docker/phone-builder/tests/invalid_head_repo.yml +++ /dev/null @@ -1,50 +0,0 @@ -taskId: 1 -task: - metadata: - source: http://todo.com/soon - owner: user@domain.com - name: B2G Emulator - description: B2G Emulator - - workerType: b2gbuild - provisionerId: aws-provisioner - - scopes: - - 'docker-worker:cache:build-emulator-objects' - - 'docker-worker:image:quay.io/mozilla/phone-builder:0.0.1' - - payload: - cache: - build-emulator-objects: '/home/worker/object-folder-flame-kk-1' - - env: - TARGET: 'flame-kk' - B2G_DEBUG: '1' - # revision/project params defined originally here https://github.com/taskcluster/taskcluster-try/blob/master/try/instantiate.js - REVISION: 'tip' - GECKO_HEAD_REPOSITORY: 'git@github.com:mozilla/gecko-dev.git' - GECKO_BASE_REPOSITORY: 'http://hg.mozilla.org/mozilla-central' - - image: 'quay.io/mozilla/phone-builder:0.0.1' - maxRunTime: 14400 - - command: - - build-phone.sh - - artifacts: - 'private/build': - type: directory - path: '/home/worker/artifacts/' - - extra: - # Rather then enforcing particular conventions we require that all build - # tasks provide the "build" extra field to specify where the build and tests - # files are located. - locations: - build: 'private/build/emulator.tar.gz' - tests: 'private/build/b2g-tests.zip' - symbols: 'private/build/b2g-crashreporter-symbols.zip' - sources: 'private/build/sources.xml' - - treeherder: - symbol: B diff --git a/testing/docker/phone-builder/tests/public.yml b/testing/docker/phone-builder/tests/public.yml deleted file mode 100644 index 63d1e18f6f4f..000000000000 --- a/testing/docker/phone-builder/tests/public.yml +++ /dev/null @@ -1,50 +0,0 @@ -taskId: 1 -task: - metadata: - source: http://todo.com/soon - owner: user@domain.com - name: B2G Emulator - description: B2G Emulator - - workerType: b2gbuild - provisionerId: aws-provisioner - - scopes: - - 'docker-worker:cache:build-emulator-objects' - - 'docker-worker:image:quay.io/mozilla/phone-builder:0.0.1' - - payload: - cache: - build-emulator-objects: '/home/worker/object-folder-flame-kk-1' - - env: - TARGET: 'flame-kk' - B2G_DEBUG: '1' - # revision/project params defined originally here https://github.com/taskcluster/taskcluster-try/blob/master/try/instantiate.js - REVISION: 'tip' - GECKO_HEAD_REPOSITORY: 'http://hg.mozilla.org/mozilla-central' - GECKO_BASE_REPOSITORY: 'http://hg.mozilla.org/mozilla-central' - - image: 'quay.io/mozilla/phone-builder:0.0.1' - maxRunTime: 14400 - - command: - - build-phone.sh - - artifacts: - 'public/build': - type: directory - path: '/home/worker/artifacts/' - - extra: - # Rather then enforcing particular conventions we require that all build - # tasks provide the "build" extra field to specify where the build and tests - # files are located. - locations: - build: 'public/build/emulator.tar.gz' - tests: 'public/build/b2g-tests.zip' - symbols: 'public/build/b2g-crashreporter-symbols.zip' - sources: 'public/build/sources.xml' - - treeherder: - symbol: B diff --git a/testing/docker/phone-builder/tests/test_validation.py b/testing/docker/phone-builder/tests/test_validation.py deleted file mode 100755 index 083826c00bbd..000000000000 --- a/testing/docker/phone-builder/tests/test_validation.py +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env python - -import unittest -import sys -import yaml -sys.path.append('../bin') -from validate_task import check_task - -def load_task(task_file): - content = open(task_file, 'r') - return yaml.load(content)['task'] - -class TaskValidationTest(unittest.TestCase): - def test_valid_task(self): - task = load_task('valid.yml') - self.assertEquals(check_task(task), 0) - - def test_invalid_base_repo(self): - task = load_task('invalid_base_repo.yml') - self.assertEquals(check_task(task), -1) - - def test_invalid_head_repo(self): - task = load_task('invalid_head_repo.yml') - self.assertEquals(check_task(task), -1) - - def test_public_artifact(self): - task = load_task('public.yml') - self.assertEquals(check_task(task), -1) - -if __name__ == '__main__': - unittest.main() diff --git a/testing/docker/phone-builder/tests/valid.yml b/testing/docker/phone-builder/tests/valid.yml deleted file mode 100644 index 43241fc8235a..000000000000 --- a/testing/docker/phone-builder/tests/valid.yml +++ /dev/null @@ -1,53 +0,0 @@ -taskId: 1 -task: - metadata: - source: http://todo.com/soon - owner: user@domain.com - name: B2G flame-kk opt - description: B2G flame-kk opt - - workerType: b2gbuild - provisionerId: aws-provisioner - - scopes: - - 'docker-worker:cache:build-phone-objects' - - 'docker-worker:image:{{#docker_image}}phone-builder{{/docker_image}}' - - payload: - cache: - build-phone-objects: '/home/worker/object-folder-flame-kk-1' - - env: - TARGET: 'flame-kk' - B2G_DEBUG: '1' - # revision/project params defined originally here https://github.com/taskcluster/taskcluster-try/blob/master/try/instantiate.js - REVISION: 'tip' - GECKO_HEAD_REPOSITORY: 'http://hg.mozilla.org/mozilla-central' - GECKO_BASE_REPOSITORY: 'http://hg.mozilla.org/mozilla-central' - - image: '{{#docker_image}}phone-builder{{/docker_image}}' - maxRunTime: 14400 - - command: - - build-phone.sh - - artifacts: - 'private/build': - type: directory - path: '/home/worker/artifacts/' - expires: - relative-datestamp: '1 year' - - extra: - # Rather then enforcing particular conventions we require that all build - # tasks provide the "build" extra field to specify where the build and tests - # files are located. - locations: - build: 'private/build/b2g-android-arm.tar.gz' - img: 'private/build/flame-kk.zip' - tests: 'private/build/gaia.zip' - symbols: 'private/build/b2g-crashreporter-symbols.zip' - sources: 'private/build/sources.xml' - - treeherder: - symbol: B