Bug 1199720 - Setup builds for b2gdroid, taskcluster and mozharness bits, r=dustin

This commit is contained in:
Jordan Lund 2015-09-30 13:57:52 -07:00
parent cd9b824499
commit 520f9b8623
12 changed files with 113 additions and 7 deletions

View File

@ -54,5 +54,12 @@
"algorithm": "sha512",
"filename": "java_home-1.7.0-openjdk-1.7.0.85.x86_64.tar.xz",
"unpack": true
},
{
"size": 31078810,
"digest": "2dffe4e5419a0c0c9908dc52b01cc07379a42e2aa8481be7a26bb8750b586b95bbac3fe57e64f5d37b43e206516ea70ad938a2e45858fdcf1e28258e70ae8d8c",
"algorithm": "sha512",
"filename": "moz-tt.tar.bz2",
"unpack": true
}
]

View File

@ -51,5 +51,5 @@ for extra_repo in $EXTRA_CHECKOUT_REPOSITORIES; do
tc-vcs checkout ${!DEST_DIR} ${!BASE_REPO} ${!HEAD_REPO} ${!HEAD_REV} ${!HEAD_REF}
done
tc-vcs checkout $WORKSPACE/build/src $GECKO_BASE_REPOSITORY $GECKO_HEAD_REPOSITORY $GECKO_HEAD_REV $GECKO_HEAD_REF
export GECKO_DIR=$WORKSPACE/build/src
tc-vcs checkout $GECKO_DIR $GECKO_BASE_REPOSITORY $GECKO_HEAD_REPOSITORY $GECKO_HEAD_REV $GECKO_HEAD_REF

View File

@ -0,0 +1,8 @@
config = {
'base_name': 'Android armv7 API 11+ b2gdroid %(branch)s',
'stage_platform': 'android-api-11-b2gdroid',
'build_type': 'api-11-b2gdroid-opt',
'src_mozconfig': 'mobile/android/b2gdroid/config/mozconfigs/nightly',
'tooltool_manifest_src': 'mobile/android/config/tooltool-manifests/android/releng.manifest',
'multi_locale_config_platform': 'android',
}

View File

@ -324,6 +324,7 @@ class BuildOptionParser(object):
'api-11-debug': 'builds/releng_sub_%s_configs/%s_api_11_debug.py',
'x86': 'builds/releng_sub_%s_configs/%s_x86.py',
'api-11-partner-sample1': 'builds/releng_sub_%s_configs/%s_api_11_partner_sample1.py',
'api-11-b2gdroid': 'builds/releng_sub_%s_configs/%s_api_11_b2gdroid.py',
}
build_pool_cfg_file = 'builds/build_pool_specifics.py'
branch_cfg_file = 'builds/branch_specifics.py'

View File

@ -8,7 +8,7 @@ PATH=$DIRNAME:$PATH
. desktop-setup.sh
### Clone gaia
pull-gaia.sh $GECKO_DIR $GAIA_DIR
pull-gaia.sh $GECKO_DIR $GAIA_DIR gaia_props.py
# Ensure symlink has been created to gaia...
rm -f $GECKO_DIR/gaia

View File

@ -25,6 +25,9 @@ echo "running as" $(id)
: WORKSPACE ${WORKSPACE:=/home/worker/workspace}
# some linux variants, e.g. b2gdroid, require gaia
: CHECKOUT_GAIA ${CHECKOUT_GAIA:=false}
set -v
export MOZ_CRASHREPORTER_NO_REPORT=1
@ -87,6 +90,16 @@ if [ -n "${MH_CUSTOM_BUILD_VARIANT_CFG}" ]; then
custom_build_variant_cfg_flag="--custom-build-variant-cfg=${MH_CUSTOM_BUILD_VARIANT_CFG}"
fi
if [ "$CHECKOUT_GAIA" = true ]; then
pull_gaia=$GECKO_DIR/testing/taskcluster/scripts/builder/pull-gaia.sh
gaia_props=$GECKO_DIR/testing/taskcluster/scripts/builder/gaia_props.py
gaia_dir=$WORKSPACE/build/gaia
$pull_gaia $GECKO_DIR $gaia_dir $gaia_props
rm -f $GECKO_DIR/gaia
ln -s $gaia_dir $GECKO_DIR/gaia
fi
set +x
# mozharness scripts look for the relengapi token at this location, so put it there,
# if specified

View File

@ -1,4 +1,4 @@
#! /usr/bin/env python
#! /usr/bin/env python2.7
'''
Command line interface to fetch details from the b2g/config/gaia.json properties

View File

@ -6,8 +6,9 @@ PATH=$DIRNAME:$PATH
gecko_dir=$1
target=$2
gaia_props=$3
gaia_repo=$(gaia_props.py $gecko_dir repository)
gaia_rev=$(gaia_props.py $gecko_dir revision)
gaia_repo=$($gaia_props $gecko_dir repository)
gaia_rev=$($gaia_props $gecko_dir revision)
tc-vcs checkout $target $gaia_repo $gaia_repo $gaia_rev

View File

@ -36,6 +36,7 @@ flags:
- aries-dogfood
- android-api-11
- android-partner-sample1
- android-b2gdroid
- linux
- linux64
- linux64-st-an

View File

@ -144,6 +144,12 @@ builds:
types:
opt:
task: tasks/builds/android_api_11_partner_sample1.yml
android-b2gdroid:
platforms:
- Android
types:
opt:
task: tasks/builds/android_api_11_b2gdroid.yml
sm-plain:
platforms:
- Linux64

View File

@ -0,0 +1,69 @@
$inherits:
from: 'tasks/builds/mobile_base.yml'
variables:
build_name: 'android-api-11-b2gdroid'
build_type: 'opt'
task:
metadata:
name: '[TC] Android armv7 API 11+ b2gdroid'
description: 'Android armv7 API 11+ b2gdroid'
workerType: android-api-11
routes:
- 'index.buildbot.branches.{{project}}.android-api-11-b2gdroid'
- 'index.buildbot.revisions.{{head_rev}}.{{project}}.android-api-11-b2gdroid'
scopes:
- 'docker-worker:cache:build-android-api-11-c6-workspace'
- 'docker-worker:cache:tooltool-cache'
- 'docker-worker:relengapi-proxy:tooltool.download.internal'
- 'docker-worker:relengapi-proxy:tooltool.download.public'
payload:
image: '{{#docker_image}}desktop-build{{/docker_image}}'
cache:
build-android-api-11-c6-workspace: '/home/worker/workspace'
tooltool-cache: '/home/worker/tooltool-cache'
features:
relengAPIProxy: true
env:
# inputs to mozharness
MOZHARNESS_SCRIPT: 'mozharness/scripts/fx_desktop_build.py'
# TODO: make these additional configuration files go away
MOZHARNESS_CONFIG: >
builds/releng_base_android_64_builds.py
disable_signing.py
platform_supports_post_upload_to_latest.py
MH_CUSTOM_BUILD_VARIANT_CFG: api-11-b2gdroid
MH_BRANCH: {{project}}
MH_BUILD_POOL: taskcluster
CHECKOUT_GAIA: true
# image paths
TOOLTOOL_CACHE: '/home/worker/tooltool-cache'
# authentication
RELENGAPI_TOKEN: 'TODO' # 1164612: encrypt this secret
maxRunTime: 36000
command: ["/bin/bash", "bin/build.sh"]
extra:
treeherderEnv:
- production
- staging
treeherder:
machine:
# see https://github.com/mozilla/treeherder/blob/master/ui/js/values.js
platform: android-4-0-armv7-api11
# 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/target.linux-x86_64.tar.bz2'
tests: 'public/build/target.tests.zip'

View File

@ -33,7 +33,7 @@ task:
- -exc
- >
tc-vcs checkout ./gecko {{base_repository}} {{head_repository}} {{head_rev}} {{head_ref}} &&
./gecko/testing/taskcluster/scripts/builder/pull-gaia.sh ./gecko ./gaia &&
./gecko/testing/taskcluster/scripts/builder/pull-gaia.sh ./gecko ./gaia gaia_props.py &&
./gecko/testing/taskcluster/scripts/builder/build-simulator.sh ./gecko ./gaia {{build_url}}
artifacts: