Bug 1247170 - Part 1: Add "android-gradle-build" Docker image. r=dustin,sebastian r?gps
We can't run Docker-in-Docker, so this is a clone of
https://hub.docker.com/r/sonatype/nexus, modified to run additional
commands. Sonatype Nexus officially supports the Oracle JDK but the
OpenJDK appears to work as well, so we use it.
This bakes a build.sh and Gradle-specific dependencies into the docker
image. This makes sense in a future where the dependencies this
fetches are baked into the image used to build Fennec. It makes less
sense right now, when the dependencies are uploaded to tooltool and
subsequently consumed. It's not critical that we get this right
immediately.
The actual build.sh script runs the Gradle wrapper for a special
dependency project. The wrapper installs Gradle itself, downloads a
large number of Gradle dependencies, and uses Jake Wharton's
https://github.com/JakeWharton/sdk-manager-plugin/ to download and
install the Android SDK. (We could use |mach bootstrap|, but that
doesn't (yet) support non-interactive use, and I want to try to use
the SDK Manager more generally.) These outputs are then packaged for
further use: right now, they're exposed as artifacts, but eventually
we'll upload them directly to tooltool.
MozReview-Commit-ID: 7upsk1ANuxN
copy from testing/docker/desktop-build/Dockerfile
copy to testing/docker/android-gradle-build/Dockerfile
--- a/testing/docker/desktop-build/Dockerfile
+++ b/testing/docker/android-gradle-build/Dockerfile
@@ -1,29 +1,57 @@
-FROM taskcluster/centos6-build-upd:0.1.3.20160122142300
-MAINTAINER Dustin J. Mitchell <dustin@mozilla.com>
+FROM centos:centos7
+MAINTAINER Nick Alexander <nalexander@mozilla.com>
+
+# Reset user/workdir from parent image so we can install software.
+WORKDIR /
+USER root
+
+# Update base.
+RUN yum upgrade -y
+
+# Install JDK and Sonatype Nexus. Cribbed directly from
+# https://github.com/sonatype/docker-nexus/blob/fffd2c61b2368292040910c055cf690c8e76a272/oss/Dockerfile.
-# Add build scripts; these are the entry points from the taskcluster worker, and
-# operate on environment variables
-ADD bin /home/worker/bin
-RUN chmod +x /home/worker/bin/*
+RUN yum install -y \
+ createrepo \
+ curl \
+ java-1.7.0-openjdk-devel \
+ java-1.7.0-openjdk \
+ sudo \
+ tar \
+ unzip \
+ wget \
+ zip \
+ && yum clean all
-# Generate machine uuid file
-RUN dbus-uuidgen --ensure=/var/lib/dbus/machine-id
+ENV NEXUS_VERSION 2.12.0-01
+
+RUN mkdir -p /opt/sonatype/nexus
-# Stubbed out credentials; mozharness looks for this file an issues a WARNING
-# if it's not found, which causes the build to fail. Note that this needs to
-# be in the parent of the workspace directory and in the directory where
-# mozharness is run (not its --work-dir). See Bug 1169652.
-ADD oauth.txt /home/worker/
+WORKDIR /tmp
+RUN curl --fail --silent --location --retry 3 \
+ https://download.sonatype.com/nexus/oss/nexus-${NEXUS_VERSION}-bundle.tar.gz \
+ -o /tmp/nexus-${NEXUS_VERSION}-bundle.tar.gz
+RUN curl --fail --silent --location --retry 3 \
+ https://download.sonatype.com/nexus/oss/nexus-${NEXUS_VERSION}-bundle.tar.gz.sha1 \
+ -o /tmp/nexus-${NEXUS_VERSION}-bundle.tar.gz.sha1
+
+RUN echo $(cat nexus-${NEXUS_VERSION}-bundle.tar.gz.sha1) nexus-${NEXUS_VERSION}-bundle.tar.gz | sha1sum -c
-# stubbed out buildprops, which keeps mozharness from choking
-# Note that this needs to be in the parent of the workspace directory and in
-# the directory where mozharness is run (not its --work-dir)
-ADD buildprops.json /home/worker/
+RUN tar zxf nexus-${NEXUS_VERSION}-bundle.tar.gz \
+ && mv /tmp/nexus-${NEXUS_VERSION}/* /opt/sonatype/nexus/ \
+ && rm -rf /tmp/nexus-${NEXUS_VERSION} \
+ && rm -rf /tmp/nexus-${NEXUS_VERSION}-bundle.tar.gz
-# install tooltool directly from github where tooltool_wrapper.sh et al. expect
-# to find it
-RUN wget -O /builds/tooltool.py https://raw.githubusercontent.com/mozilla/build-tooltool/master/tooltool.py
-RUN chmod +x /builds/tooltool.py
+# Install tooltool directly from github.
+RUN mkdir /build
+ADD https://raw.githubusercontent.com/mozilla/build-tooltool/master/tooltool.py /build/tooltool.py
+RUN chmod +rx /build/tooltool.py
-# Set a default command useful for debugging
-CMD ["/bin/bash", "--login"]
+# Add build scripts.
+ADD build.sh /build/
+RUN chmod +x /build/*
+
+ADD project /project
+
+# Invoke our build scripts by default, but allow other commands.
+CMD /build/build.sh
new file mode 100644
--- /dev/null
+++ b/testing/docker/android-gradle-build/README.md
@@ -0,0 +1,2 @@
+This is a docker script for fetching Android Gradle dependenices for
+use in Mozilla's build clusters.
new file mode 100644
--- /dev/null
+++ b/testing/docker/android-gradle-build/REGISTRY
@@ -0,0 +1,1 @@
+taskcluster
new file mode 100644
--- /dev/null
+++ b/testing/docker/android-gradle-build/VERSION
@@ -0,0 +1,1 @@
+0.0.1
new file mode 100644
--- /dev/null
+++ b/testing/docker/android-gradle-build/build.sh
@@ -0,0 +1,62 @@
+#!/bin/bash -vex
+
+set -x -e
+
+: WORKSPACE ${WORKSPACE:=/workspace}
+: GRADLE_VERSION ${GRADLE_VERSION:=2.7}
+
+set -v
+
+# Frowned upon, but simplest.
+RUN_AS_USER=root NEXUS_WORK=${WORKSPACE}/nexus /opt/sonatype/nexus/bin/nexus start
+
+# Wait "a while" for Nexus to actually start. Don't fail if this fails.
+wget --quiet --retry-connrefused --waitretry=2 --tries=100 \
+ http://localhost:8081/nexus/service/local/status || true
+rm -rf status
+
+# Verify Nexus has actually started. Fail if this fails.
+curl --fail --silent --location http://localhost:8081/nexus/service/local/status | grep '<state>STARTED</state>'
+
+export JAVA_HOME=/usr/lib/jvm/jre-1.7.0-openjdk
+
+pushd /project
+./gradlew tasks
+popd
+
+# Package everything up.
+pushd ${WORKSPACE}
+# Not yet. See notes on tooltool below.
+# cp -R /root/.android-sdk android-sdk-linux
+# tar cJf android-sdk-linux.tar.xz android-sdk-linux
+
+cp -R /workspace/nexus/storage/central jcentral
+tar cJf jcentral.tar.xz jcentral
+
+# The Gradle wrapper will have downloaded and verified the hash of exactly one
+# Gradle distribution. It will be located at
+# ~/.gradle/wrapper/dists/gradle-2.7-all/$PROJECT_HASH/gradle-2.7-all.zip. We
+# want to remove the version from the internal directory for use via tooltool
+# in a mozconfig.
+cp ~/.gradle/wrapper/dists/gradle-${GRADLE_VERSION}-all/*/gradle-${GRADLE_VERSION}-all.zip gradle-${GRADLE_VERSION}-all.zip
+unzip -q gradle-${GRADLE_VERSION}-all.zip
+mv gradle-${GRADLE_VERSION} gradle
+tar cJf gradle.tar.xz gradle
+
+mkdir -p /artifacts
+# We can't redistribute the Android SDK publicly just yet. We'll
+# upload to (internal) tooltool eventually. mv
+# android-sdk-linux.tar.xz /artifacts
+mv jcentral.tar.xz /artifacts
+mv gradle.tar.xz /artifacts
+popd
+
+# Bug 1245170: at some point in the future, we'll be able to upload
+# things directly to tooltool.
+# pushd /artifacts
+# /build/tooltool.py add --visibility=public jcentral.tar.xz
+# /build/tooltool.py add --visibility=public gradle.tar.xz
+# /build/tooltool.py add --visibility=internal android-sdk-linux.tar.xz
+# /build/tooltool.py upload -v --url=http://relengapi/tooltool/ \
+# --message="No message - Gradle and jcentral archives uploaded from taskcluster."
+# popd
new file mode 100644
--- /dev/null
+++ b/testing/docker/android-gradle-build/project/README.md
@@ -0,0 +1,6 @@
+This Gradle project exists only to list dependencies used to build Firefox for
+Android. Eventually, this definition will live in ``mobile/android``, or it
+will just *be* ``mobile/android/app/build.gradle``.
+
+Until we determine the best Docker and Taskcluster patterns for dependency
+gathering and toolchain producing like this, this can live here.
\ No newline at end of file
new file mode 100644
--- /dev/null
+++ b/testing/docker/android-gradle-build/project/build.gradle
@@ -0,0 +1,66 @@
+buildscript {
+ repositories {
+ maven {
+ url 'http://localhost:8081/nexus/content/repositories/central/'
+ }
+
+ maven {
+ url 'https://jitpack.io'
+ }
+ }
+
+ dependencies {
+ classpath 'com.android.tools.build:gradle:1.3.0'
+
+ // See
+ // https://github.com/JakeWharton/sdk-manager-plugin/issues/73#issuecomment-106747867
+ // and
+ // https://github.com/JakeWharton/sdk-manager-plugin/issues/99#issuecomment-166438751.
+ classpath 'com.github.JakeWharton:sdk-manager-plugin:220bf7a88a7072df3ed16dc8466fb144f2817070'
+ }
+}
+
+allprojects {
+ repositories {
+ jcenter()
+ }
+}
+
+apply plugin: 'android-sdk-manager'
+
+// Optionally, require an emulator.
+// sdkManager {
+// emulatorVersion 'android-19'
+// emulatorArchitecture 'armeabi-v7a' // Optional, defaults to ARM.
+// }
+
+apply plugin: 'com.android.application'
+
+android {
+ compileSdkVersion 23
+ buildToolsVersion "23.0.1"
+
+ defaultConfig {
+ targetSdkVersion 23
+ minSdkVersion 15
+ }
+}
+
+// These are extracted from mobile/android/**/*.gradle.
+dependencies {
+ compile 'com.android.support:appcompat-v7:23.0.1'
+ compile 'com.android.support:design:23.0.1'
+ compile 'com.android.support:mediarouter-v7:23.0.1'
+ compile 'com.android.support:recyclerview-v7:23.0.1'
+ compile 'com.android.support:support-v4:23.0.1'
+ compile 'com.google.android.gms:play-services-base:8.1.0'
+ compile 'com.google.android.gms:play-services-basement:8.1.0'
+ compile 'com.google.android.gms:play-services-cast:8.1.0'
+ compile 'com.google.android.gms:play-services-gcm:8.1.0'
+ releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta1'
+ debugCompile 'com.squareup.leakcanary:leakcanary-android:1.4-beta1'
+ testCompile 'junit:junit:4.12'
+ testCompile 'org.mockito:mockito-core:1.10.19'
+ testCompile 'org.robolectric:robolectric:3.0'
+ testCompile 'org.simpleframework:simple-http:6.0.1'
+}
new file mode 100644
index 0000000000000000000000000000000000000000..05ef575b0cd0173fc735f2857ce4bd594ce4f6bd
GIT binary patch
literal 53637
zc$|d01C(aX(k5EAZR0K5>auOywr$(CZC96V8(p@my3n`pJ^!7V@67pU_FAzLJ96!e
zTu($sWX4vI1_grw0)m19f~8jx2m1Sf0R8KM{!6l=DuQ&9a$*diKnnk0bRMN36Zp%Z
z@|V#5S4LSuIY}{5Wfgi^u}9hIDH&-x`UQAtI_lZ!xn?ECWtRQphiSTT$r;%h8cAAU
zn2Ruzv|lA!R2`V)Wxq;{#s^z*&Nc6x?wx@Dmk)l@{c~nuf63m-{2!D0cOKaP;xTtJ
zG_f)LKeD3!lhxhH(80mf>3<ty5oBUk{Fim*FOmM|AtLtfb~g5gCS*+X#x{n|&b~3S
zFoTRpp?el=S~PA9L9lCKc|Qpqi0OF+ZG>&0B_*qRvtbeU3y0AhFL_V+2&R4NUyq=P
zga-$(jD&pJIMSzlE6EMJT5A{7&@QF6!42D3I@|hKF96xqbXXK2p{`LhlrVIjmm<2-
zWB&ftF+f62jAC7}7`xK)5<EC-g8;uS6=r*=M}Y(vY$QIPa>9^#5;!3-EC|Bz*dcgV
zI(*-MlW}A>bQSIIx;Xq@Vv+xgjLM$QE~d5$PWFF$T`WzV|JFP_1zlY%Ozm7OjSXGw
zo&L25rOLMUD1u0S7=ZAxg~LjN+SJWeFO}mc`vn6W=-5bTCfO=k839{EQ1d!>6Z^!6
z`lo1H)_cge;+W<isYJl2w?ng6ypPkoJl(HHr)#%BlO9$iu|d$V;Gou2+w6^Tv1shd
z8ml+>sM;OYBnV>zZGql!6PSAYmAYXa%Dg5L%Y$VG8dctb9!q>&7!Py;FH}ZrLlCcs
zolj4GXfhRTm`pW<Po(5>FQ)6rN}ePnw=MeDRc%lyYx~qGaI2R@NKGe?0F+@*O+?cv
zTglz0(5>ViVHJ0VD{#N@?CeKaHLNskp=;$%JwUc`1||d?u3Y1Hp#LvBq7)v!N~3*#
zP>DVkW$Df$NK~F3L%_782_xcQolS	)bJ`2(={@2D3&9j<X39ZCmO^3it2vTM}Y;
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	QpzbV>Pk&6UQ}_s{<mE(;k|QhF_nle
z_B`%{T8)BtP?6%r(jn%ik^HSJjk0WnsR<kpvz#P32;<ZgA__;bl9grD8V;|P#gbhh
zQ6;3g?E=<q8A3cs<EfhIE)9i>YP8E2N^n`n=(=NVoHs9O$K8}dVwlf+T8DgHp8Wii
zp$<KL2e@M=?8|a9>vGC4!Tdewa6v9xFOnXZ%Vt*l+zp}Jw_v(SLXbn;k`lL^F%iCf
zQ-&niJ?JfC;?KSiuAvnE*_)3b3iq_f+V_5s4=>r@E`-z(;tGieou`^=A?;FE&c3$d
z!6Zl?Z>X`K;Wcd^_?~iUF2UB-8i6g+j%4O|P5JRaYfEr6e{II?ZKgV;0%?M7jQM<x
zp(Cqg`Xm2i-zb7X#X-oDFm#hG5JOJPW=bD;`4=us;l*L|&LDs<tSBWF=-Bo4G1-tx
z-U2U)duaE9Af-MQu#b5k5@mbxq0To6O*m8nOyjUZ-t9LMK>Y&LyT9$85&QWh{AC01
z^N#!*769zZ|7-#9N8x{95H!%=D*?;!N7Z|1p#OOw0i6l`_9`c)EJQCQFV6V3m_t7W
z*>AE%%0HiIK))XOe$@Y1OioB%N?c4ynL$qc9}#}Mk=qCR2jXX;wEym*{#^;!Ka}YB
zW1sf#3Znj@;L*SE_j&_h>ThWL`R7OH{@bwOe;##yc)<VG7V3YL*53m5tq0Ac{j8Gh
z&;MNX4}iZ_^xpx#oz?w(=jtZp<Y;PS?PzB3Ycthb#)DIJhmxNRD?q=ycK%{?2K#dl
z&p%pQy~P77c3;!}Sy#oMrRo2G_YwS0@g)B1Q03?7B57k~Bx_@1;bi;g(0JQAD}6sf
z9$|i85dH-X3H7JYVy*_3P7Y?yKffMZ8VMN~7&$n|=~?TU82yWLF$%9M{+ojK1H{|9
z<0Jejf!gn{Kc~&cW+qPddcT6)Z=n^v@Xhvqo)YYzzhe3W^aIkLLchJ9l0QdU%YRkz
z0ym}>)!$k&`0qW&FLXMLKSh_dG5MEgVch;C932t}$Qt4IZBf6#I<fwD*SkN*<Xmr9
z!~J=So&M|vi2i_yMfC5SV*ea%txGnn_vgv{1pW3p*|Gd7ny`(H<8Mo;wsLxA);}l3
zzrNzUg_fLeB%AqpNQ(8lWx_9LU(SEm1jJm844nSuO%{lgUt06?Q1~Y*%^y%xMgGlA
z@!#0LRr=3y-&*ee!cCC>D+au8@!nb-{=#!m`Oggx-?F^5&-=yVrS=!h^xnd~b<Oz&
zH}~N$dFcEj;GenP`~o!o_^&;1-lF_g;va2eet-NnxLD}@^Mcu%!f#DvepMmup9}x*
zmNIYQ-x`Dbf+sip>oy^8QQul{{6a-G`g?{PZ<*d&9sFWKHT|2$2XCp~D$W0*dNuzK
zbm!l~zm-h?1^>zNZwjctrFyHq`irX3@jq5#eM|CIzVa8zlFQ!~vwTbTR_*T>8K%cy
z)&6^n`BrP{7v`Dof37_BmgTLe(Jz)`|Gz46^cM52pu#WA?(n}OukcTu$D2+5zj%@&
z|Nq+Z|CaOZR_$M$qA`DU<Mvz3w>h=HFfVfdqYT@(1aA`<e-Z5D|3~SJZwcO}kNqO(
zFZx@_WN(SyrhEJ%@+tejC4am{e!GPJ3puFrZ!W06rFy$``HRZ6=Krve`4;x=irp{R
z#oE8Oe)msT;Z0os7ZYC7--z<RrFk1`{)hXb`9Fy~zr}wWbo_-c-uAabkZ+0J#!-F|
dt#<yeQI&Tx;1Iuk81VB4>1Qwfq3gG!{|8!RNpJuF
new file mode 100644
--- /dev/null
+++ b/testing/docker/android-gradle-build/project/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,7 @@
+#Tue Jan 26 20:42:06 PST 2016
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.7-all.zip
+distributionSha256Sum=2ba0aaa11a3e96ec0af31d532d808e1f09cc6dcad0954e637902a1ab544b9e60
new file mode 100755
--- /dev/null
+++ b/testing/docker/android-gradle-build/project/gradlew
@@ -0,0 +1,160 @@
+#!/usr/bin/env bash
+
+##############################################################################
+##
+## Gradle start up script for UN*X
+##
+##############################################################################
+
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+DEFAULT_JVM_OPTS=""
+
+APP_NAME="Gradle"
+APP_BASE_NAME=`basename "$0"`
+
+# Use the maximum available, or set MAX_FD != -1 to use that value.
+MAX_FD="maximum"
+
+warn ( ) {
+ echo "$*"
+}
+
+die ( ) {
+ echo
+ echo "$*"
+ echo
+ exit 1
+}
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false
+msys=false
+darwin=false
+case "`uname`" in
+ CYGWIN* )
+ cygwin=true
+ ;;
+ Darwin* )
+ darwin=true
+ ;;
+ MINGW* )
+ msys=true
+ ;;
+esac
+
+# Attempt to set APP_HOME
+# Resolve links: $0 may be a link
+PRG="$0"
+# Need this for relative symlinks.
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`"/$link"
+ fi
+done
+SAVED="`pwd`"
+cd "`dirname \"$PRG\"`/" >/dev/null
+APP_HOME="`pwd -P`"
+cd "$SAVED" >/dev/null
+
+CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
+
+# Determine the Java command to use to start the JVM.
+if [ -n "$JAVA_HOME" ] ; then
+ if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+ # IBM's JDK on AIX uses strange locations for the executables
+ JAVACMD="$JAVA_HOME/jre/sh/java"
+ else
+ JAVACMD="$JAVA_HOME/bin/java"
+ fi
+ if [ ! -x "$JAVACMD" ] ; then
+ die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+ fi
+else
+ JAVACMD="java"
+ which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+
+Please set the JAVA_HOME variable in your environment to match the
+location of your Java installation."
+fi
+
+# Increase the maximum file descriptors if we can.
+if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
+ MAX_FD_LIMIT=`ulimit -H -n`
+ if [ $? -eq 0 ] ; then
+ if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
+ MAX_FD="$MAX_FD_LIMIT"
+ fi
+ ulimit -n $MAX_FD
+ if [ $? -ne 0 ] ; then
+ warn "Could not set maximum file descriptor limit: $MAX_FD"
+ fi
+ else
+ warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
+ fi
+fi
+
+# For Darwin, add options to specify how the application appears in the dock
+if $darwin; then
+ GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
+fi
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin ; then
+ APP_HOME=`cygpath --path --mixed "$APP_HOME"`
+ CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
+ JAVACMD=`cygpath --unix "$JAVACMD"`
+
+ # We build the pattern for arguments to be converted via cygpath
+ ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
+ SEP=""
+ for dir in $ROOTDIRSRAW ; do
+ ROOTDIRS="$ROOTDIRS$SEP$dir"
+ SEP="|"
+ done
+ OURCYGPATTERN="(^($ROOTDIRS))"
+ # Add a user-defined pattern to the cygpath arguments
+ if [ "$GRADLE_CYGPATTERN" != "" ] ; then
+ OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
+ fi
+ # Now convert the arguments - kludge to limit ourselves to /bin/sh
+ i=0
+ for arg in "$@" ; do
+ CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
+ CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
+
+ if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
+ eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
+ else
+ eval `echo args$i`="\"$arg\""
+ fi
+ i=$((i+1))
+ done
+ case $i in
+ (0) set -- ;;
+ (1) set -- "$args0" ;;
+ (2) set -- "$args0" "$args1" ;;
+ (3) set -- "$args0" "$args1" "$args2" ;;
+ (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+ (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+ (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+ (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
+ (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
+ (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
+ esac
+fi
+
+# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
+function splitJvmOpts() {
+ JVM_OPTS=("$@")
+}
+eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
+JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
+
+exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
new file mode 100644
--- /dev/null
+++ b/testing/docker/android-gradle-build/project/gradlew.bat
@@ -0,0 +1,90 @@
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
+set DEFAULT_JVM_OPTS=
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto init
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto init
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:init
+@rem Get command-line arguments, handling Windowz variants
+
+if not "%OS%" == "Windows_NT" goto win9xME_args
+if "%@eval[2+2]" == "4" goto 4NT_args
+
+:win9xME_args
+@rem Slurp the command line arguments.
+set CMD_LINE_ARGS=
+set _SKIP=2
+
+:win9xME_args_slurp
+if "x%~1" == "x" goto execute
+
+set CMD_LINE_ARGS=%*
+goto execute
+
+:4NT_args
+@rem Get arguments from the 4NT Shell from JP Software
+set CMD_LINE_ARGS=%$
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
+rem the _cmd.exe /c_ return code!
+if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
new file mode 100644
--- /dev/null
+++ b/testing/docker/android-gradle-build/project/src/main/AndroidManifest.xml
@@ -0,0 +1,6 @@
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="org.mozilla.gecko">
+<!-- THIS IS NOT THE REAL MANIFEST! This is for Gradle only. See
+ AndroidManifest.xml.in. -->
+
+</manifest>