deleted file mode 100644
--- 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
--- a/taskcluster/ci/build/kind.yml
+++ b/taskcluster/ci/build/kind.yml
@@ -9,10 +9,9 @@ transforms:
- taskgraph.transforms.build_attrs:transforms
- taskgraph.transforms.job:transforms
- taskgraph.transforms.task:transforms
jobs-from:
- android.yml
- linux.yml
- macosx.yml
- - mulet.yml
- windows.yml
deleted file mode 100644
--- 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
-
-
--- a/taskcluster/ci/docker-image/kind.yml
+++ b/taskcluster/ci/docker-image/kind.yml
@@ -9,13 +9,11 @@ images_path: '../../../testing/docker'
# write artifacts for each, these are whitelisted, but ideally that will change
# (to use subdirectory clones of the proper directory), at which point we can
# generate tasks for every docker image in the directory, secure in the
# knowledge that unnecessary images will be omitted from the target task graph
images:
- desktop-test
- desktop1604-test
- desktop-build
- - builder
- tester
- lint
- android-gradle-build
- - phone-builder
--- a/taskcluster/ci/hazard/kind.yml
+++ b/taskcluster/ci/hazard/kind.yml
@@ -53,31 +53,8 @@ jobs:
run:
using: hazard
tooltool-manifest: "browser/config/tooltool-manifests/linux64/hazard.manifest"
mozconfig: "browser/config/mozconfigs/linux64/hazards"
command: >
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
--- a/taskcluster/docs/kinds.rst
+++ b/taskcluster/docs/kinds.rst
@@ -65,23 +65,16 @@ will eventually be dependencies of the b
are run manually via try pushes and the results uploaded to tooltool.
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
------------------
TBD (Maja)
Tests
-----
deleted file mode 100755
--- 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
deleted file mode 100755
--- 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
deleted file mode 100755
--- 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 ###################################
deleted file mode 100755
--- 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 ###################################
deleted file mode 100755
--- 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
-
deleted file mode 100755
--- 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']))
deleted file mode 100755
--- 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
deleted file mode 100755
--- 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
deleted file mode 100755
--- 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
deleted file mode 100755
--- 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
deleted file mode 100755
--- 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
-
deleted file mode 100755
--- 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
-
--- a/taskcluster/taskgraph/transforms/gecko_v2_whitelist.py
+++ b/taskcluster/taskgraph/transforms/gecko_v2_whitelist.py
@@ -40,19 +40,16 @@ JOB_NAME_WHITELIST = set([
'linux64-st-an-opt',
'linux64-valgrind-opt',
'linux-debug',
'linux-opt',
'linux-pgo',
'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',
'sm-arm64-sim-debug',
'sm-arm-sim-debug',
'sm-asan-opt',
'sm-compacting-debug',
'sm-mozjs-sys-debug',
deleted file mode 100644
--- 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 <build>
- 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},
- ]
deleted file mode 100644
--- 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",
- ]
--- a/taskcluster/taskgraph/transforms/task.py
+++ b/taskcluster/taskgraph/transforms/task.py
@@ -81,17 +81,17 @@ task_description_schema = Schema({
# treeherder environments (defaults to both staging and production)
Required('environments', default=['production', 'staging']): ['production', 'staging'],
},
# information for indexing this build so its artifacts can be discovered;
# 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(
# Assuming the job is named "normally", this is the v2 job name,
# and the v1 and buildbot routes will be determined appropriately.
basestring,
# otherwise, give separate names for each of the legacy index
@@ -262,17 +262,16 @@ GROUP_NAMES = {
'tc-M-e10s': 'Mochitests executed by TaskCluster with e10s',
'tc-R': 'Reftests executed by TaskCluster',
'tc-R-e10s': 'Reftests executed by TaskCluster with e10s',
'tc-VP': 'VideoPuppeteer tests executed by TaskCluster',
'tc-W': 'Web platform tests executed by TaskCluster',
'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',
'SM-tc': 'Spidermonkey builds',
}
UNKNOWN_GROUP_NAME = "Treeherder group {} has no name; add it to " + __file__
BUILDBOT_ROUTE_TEMPLATES = [
--- a/taskcluster/taskgraph/try_option_syntax.py
+++ b/taskcluster/taskgraph/try_option_syntax.py
@@ -26,17 +26,16 @@ BUILD_KINDS = set([
'build',
'artifact-build',
'hazard',
'l10n',
'upload-symbols',
'valgrind',
'static-analysis',
'spidermonkey',
- 'b2g-device',
])
# anything in this list is governed by -j
JOB_KINDS = set([
'source-check',
'toolchain',
'marionette-harness',
'android-stuff',
deleted file mode 100644
--- a/testing/docker/b2g-build/Dockerfile
+++ /dev/null
@@ -1,147 +0,0 @@
-FROM centos:centos6
-MAINTAINER Dustin J. Mitchell <dustin@mozilla.com>
-
-# 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"]
deleted file mode 100644
--- a/testing/docker/b2g-build/VERSION
+++ /dev/null
@@ -1,1 +0,0 @@
-0.2.11
deleted file mode 100755
--- 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))
deleted file mode 100644
--- 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
deleted file mode 100644
--- a/testing/docker/builder/Dockerfile
+++ /dev/null
@@ -1,32 +0,0 @@
-FROM quay.io/mozilla/b2g-build:0.2.11
-MAINTAINER Dustin J. Mitchell <dustin@mozilla.com>
-
-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/*
deleted file mode 100644
--- a/testing/docker/builder/REGISTRY
+++ /dev/null
@@ -1,1 +0,0 @@
-taskcluster
deleted file mode 100644
--- a/testing/docker/builder/VERSION
+++ /dev/null
@@ -1,1 +0,0 @@
-0.5.13
deleted file mode 100644
--- 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
deleted file mode 100644
--- 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
deleted file mode 100644
--- 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
deleted file mode 100644
--- a/testing/docker/phone-builder/Dockerfile
+++ /dev/null
@@ -1,17 +0,0 @@
-FROM taskcluster/builder:0.5.13
-MAINTAINER Wander Lairson Costa <wcosta@mozilla.com>
-
-# 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
-
deleted file mode 100755
--- 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())
deleted file mode 100644
--- a/testing/docker/phone-builder/hgrc
+++ /dev/null
@@ -1,4 +0,0 @@
-[extensions]
-share =
-[ui]
-username = TaskCluster <nobody@mozilla.org>
deleted file mode 100644
--- 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
deleted file mode 100644
--- 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
deleted file mode 100644
--- 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
deleted file mode 100644
--- 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
deleted file mode 100755
--- 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()
deleted file mode 100644
--- 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