зеркало из https://github.com/mozilla/gecko-dev.git
Backed out changesets ef813898b5d3, ce228388aaf6, and c798f482b2c5 (bug 1396098) for violating TC cache constraints
CLOSED TREE --HG-- extra : amend_source : 84120d6bacb5d72a9fbe41e4c3b405d63825da7c extra : histedit_source : 8320c2193761b745f10850055ee74a3c9ac73615%2Cfbc2a28d8c5004a53305ef858ca5aea4245691e0
This commit is contained in:
Родитель
0b5ee79acc
Коммит
972bb63fcc
|
@ -10,27 +10,19 @@ fi
|
|||
MOZ_AUTOMATION_L10N_CHECK=0
|
||||
. "$topsrcdir/build/mozconfig.common"
|
||||
|
||||
# For actual Android builds in TaskCluster, the system image is Debian,
|
||||
# and we use the Java JRE/JDK from the system, as well as the system
|
||||
# GCC for the host compiler. l10n builds are still special, however:
|
||||
# they are run on older CentOS systems, and l10n builds on release are
|
||||
# still run on Buildbot. So we have to set things up so this mozconfig
|
||||
# works in all cases.
|
||||
if [ -f /etc/debian_version ]; then
|
||||
# We're on Debian, there's nothing to do.
|
||||
true
|
||||
elif [ ! -f /etc/redhat-release ] || [ "$(< /etc/redhat-release)" != "CentOS release 6.2 (Final)" ]; then
|
||||
# In TaskCluster, the Java JRE/JDK are installed from tooltool, but that
|
||||
# install doesn't work on the old Buildbot mock builders (CentOS 6.2), so
|
||||
# the relevant env vars are not set up in that case, leaving the build to
|
||||
# run from the JRE/JDK in /usr/lib/jvm.
|
||||
if [ ! -f /etc/redhat-release ] || [ "$(< /etc/redhat-release)" != "CentOS release 6.2 (Final)" ]; then
|
||||
# set JAVA_HOME to find the JRE/JDK from tooltool. Several scripts in the JDK
|
||||
# assume `java` is in PATH, so set that too. To see how this tarball is built,
|
||||
# see taskcluster/scripts/builder/build-android-dependencies/repackage-jdk-centos.sh
|
||||
# see taskcluster/scripts/misc/repackage-jdk.sh
|
||||
export JAVA_HOME="$topsrcdir/java_home"
|
||||
export PATH="$PATH:$topsrcdir/java_home/bin"
|
||||
|
||||
mk_add_options "export JAVA_HOME=$topsrcdir/java_home"
|
||||
mk_add_options "export PATH=$PATH:$topsrcdir/java_home/bin"
|
||||
|
||||
HOST_CC="$topsrcdir/gcc/bin/gcc"
|
||||
HOST_CXX="$topsrcdir/gcc/bin/g++"
|
||||
fi
|
||||
|
||||
ac_add_options --enable-elf-hack
|
||||
|
@ -106,6 +98,11 @@ export SOCORRO_SYMBOL_UPLOAD_TOKEN_FILE=/builds/crash-stats-api.token
|
|||
# Package js shell.
|
||||
export MOZ_PACKAGE_JSSHELL=1
|
||||
|
||||
# Use ccache
|
||||
|
||||
HOST_CC="$topsrcdir/gcc/bin/gcc"
|
||||
HOST_CXX="$topsrcdir/gcc/bin/g++"
|
||||
|
||||
. "$topsrcdir/build/unix/mozconfig.stdcxx"
|
||||
|
||||
# Use libc++ as our C++ standard library
|
||||
|
|
|
@ -58,7 +58,7 @@ android-test/opt:
|
|||
symbol: tc(test)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
docker-image: {in-tree: desktop-build}
|
||||
env:
|
||||
GRADLE_USER_HOME: "/builds/worker/workspace/build/src/dotgradle"
|
||||
PERFHERDER_EXTRA_OPTIONS: android-test
|
||||
|
@ -85,7 +85,6 @@ android-test/opt:
|
|||
optimizations:
|
||||
- - skip-unless-changed
|
||||
- - "mobile/android/base/**"
|
||||
- "mobile/android/config/**"
|
||||
- "mobile/android/tests/background/junit4/**"
|
||||
- "**/*.gradle"
|
||||
|
||||
|
@ -101,7 +100,7 @@ android-lint/opt:
|
|||
symbol: tc(lint)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
docker-image: {in-tree: desktop-build}
|
||||
env:
|
||||
GRADLE_USER_HOME: "/builds/worker/workspace/build/src/dotgradle"
|
||||
PERFHERDER_EXTRA_OPTIONS: android-lint
|
||||
|
@ -149,7 +148,6 @@ android-lint/opt:
|
|||
- "mobile/android/**/*.svg"
|
||||
- "mobile/android/**/*.xml" # Manifest & android resources
|
||||
- "mobile/android/**/Makefile.in"
|
||||
- "mobile/android/config/**"
|
||||
- "mobile/android/**/moz.build"
|
||||
- "**/*.gradle"
|
||||
|
||||
|
@ -165,7 +163,7 @@ android-checkstyle/opt:
|
|||
symbol: tc(checkstyle)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
docker-image: {in-tree: desktop-build}
|
||||
env:
|
||||
GRADLE_USER_HOME: "/builds/worker/workspace/build/src/dotgradle"
|
||||
PERFHERDER_EXTRA_OPTIONS: android-checkstyle
|
||||
|
@ -197,7 +195,6 @@ android-checkstyle/opt:
|
|||
- - "mobile/android/**/checkstyle.xml"
|
||||
- "mobile/android/**/*.java"
|
||||
- "mobile/android/**/Makefile.in"
|
||||
- "mobile/android/config/**"
|
||||
- "mobile/android/**/moz.build"
|
||||
- "**/*.gradle"
|
||||
|
||||
|
@ -213,7 +210,7 @@ android-findbugs/opt:
|
|||
symbol: tc(findbugs)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
docker-image: {in-tree: desktop-build}
|
||||
env:
|
||||
GRADLE_USER_HOME: "/builds/worker/workspace/build/src/dotgradle"
|
||||
PERFHERDER_EXTRA_OPTIONS: android-findbugs
|
||||
|
@ -250,6 +247,5 @@ android-findbugs/opt:
|
|||
- - skip-unless-changed
|
||||
- - "mobile/android/**/*.java"
|
||||
- "mobile/android/**/Makefile.in"
|
||||
- "mobile/android/config/**"
|
||||
- "mobile/android/**/moz.build"
|
||||
- "**/*.gradle"
|
||||
|
|
|
@ -8,7 +8,6 @@ android-api-16/debug:
|
|||
symbol: tc(B)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
max-run-time: 7200
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
|
@ -24,6 +23,7 @@ android-api-16/debug:
|
|||
custom-build-variant-cfg: api-16-debug
|
||||
tooltool-downloads: internal
|
||||
toolchains:
|
||||
- linux64-gcc
|
||||
- linux64-sccache
|
||||
|
||||
android-x86/opt:
|
||||
|
@ -36,7 +36,6 @@ android-x86/opt:
|
|||
symbol: tc(B)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
max-run-time: 7200
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
|
||||
|
@ -52,6 +51,7 @@ android-x86/opt:
|
|||
custom-build-variant-cfg: x86
|
||||
tooltool-downloads: internal
|
||||
toolchains:
|
||||
- linux64-gcc
|
||||
- linux64-sccache
|
||||
|
||||
android-x86-nightly/opt:
|
||||
|
@ -67,7 +67,6 @@ android-x86-nightly/opt:
|
|||
symbol: tc(N)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
max-run-time: 7200
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
|
||||
|
@ -84,6 +83,7 @@ android-x86-nightly/opt:
|
|||
custom-build-variant-cfg: x86
|
||||
tooltool-downloads: internal
|
||||
toolchains:
|
||||
- linux64-gcc
|
||||
- linux64-sccache
|
||||
|
||||
android-api-16/opt:
|
||||
|
@ -96,7 +96,6 @@ android-api-16/opt:
|
|||
symbol: tc(B)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
max-run-time: 7200
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
|
@ -112,6 +111,7 @@ android-api-16/opt:
|
|||
custom-build-variant-cfg: api-16
|
||||
tooltool-downloads: internal
|
||||
toolchains:
|
||||
- linux64-gcc
|
||||
- linux64-sccache
|
||||
|
||||
android-api-16-nightly/opt:
|
||||
|
@ -127,7 +127,6 @@ android-api-16-nightly/opt:
|
|||
symbol: tc(N)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
max-run-time: 7200
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
|
@ -144,6 +143,7 @@ android-api-16-nightly/opt:
|
|||
custom-build-variant-cfg: api-16
|
||||
tooltool-downloads: internal
|
||||
toolchains:
|
||||
- linux64-gcc
|
||||
- linux64-sccache
|
||||
|
||||
android-x86-old-id/opt:
|
||||
|
@ -156,7 +156,6 @@ android-x86-old-id/opt:
|
|||
symbol: tc(B)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
max-run-time: 7200
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
|
||||
|
@ -173,6 +172,7 @@ android-x86-old-id/opt:
|
|||
tooltool-downloads: internal
|
||||
run-on-projects: [ 'mozilla-central' ]
|
||||
toolchains:
|
||||
- linux64-gcc
|
||||
- linux64-sccache
|
||||
|
||||
android-x86-old-id-nightly/opt:
|
||||
|
@ -188,7 +188,6 @@ android-x86-old-id-nightly/opt:
|
|||
symbol: tc(N)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
max-run-time: 7200
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
|
||||
|
@ -206,6 +205,7 @@ android-x86-old-id-nightly/opt:
|
|||
tooltool-downloads: internal
|
||||
run-on-projects: [ 'mozilla-central' ]
|
||||
toolchains:
|
||||
- linux64-gcc
|
||||
- linux64-sccache
|
||||
|
||||
android-api-16-old-id/opt:
|
||||
|
@ -218,7 +218,6 @@ android-api-16-old-id/opt:
|
|||
symbol: tc(B)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
max-run-time: 7200
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
|
@ -235,6 +234,7 @@ android-api-16-old-id/opt:
|
|||
tooltool-downloads: internal
|
||||
run-on-projects: [ 'mozilla-central' ]
|
||||
toolchains:
|
||||
- linux64-gcc
|
||||
- linux64-sccache
|
||||
|
||||
android-api-16-old-id-nightly/opt:
|
||||
|
@ -250,7 +250,6 @@ android-api-16-old-id-nightly/opt:
|
|||
symbol: tc(N)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
max-run-time: 7200
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
|
@ -268,6 +267,7 @@ android-api-16-old-id-nightly/opt:
|
|||
tooltool-downloads: internal
|
||||
run-on-projects: [ 'mozilla-central' ]
|
||||
toolchains:
|
||||
- linux64-gcc
|
||||
- linux64-sccache
|
||||
|
||||
android-api-16-gradle/opt:
|
||||
|
@ -281,7 +281,6 @@ android-api-16-gradle/opt:
|
|||
tier: 2
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
max-run-time: 7200
|
||||
env:
|
||||
# Bug 1292762 - Set GRADLE_USER_HOME to avoid sdk-manager-plugin intermittent
|
||||
|
@ -309,6 +308,7 @@ android-api-16-gradle/opt:
|
|||
custom-build-variant-cfg: api-16-gradle
|
||||
tooltool-downloads: internal
|
||||
toolchains:
|
||||
- linux64-gcc
|
||||
- linux64-sccache
|
||||
|
||||
android-aarch64/opt:
|
||||
|
@ -321,7 +321,6 @@ android-aarch64/opt:
|
|||
symbol: tc(B)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
max-run-time: 7200
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
|
@ -337,6 +336,7 @@ android-aarch64/opt:
|
|||
custom-build-variant-cfg: aarch64
|
||||
tooltool-downloads: internal
|
||||
toolchains:
|
||||
- linux64-gcc
|
||||
- linux64-sccache
|
||||
|
||||
android-aarch64-nightly/opt:
|
||||
|
@ -352,7 +352,6 @@ android-aarch64-nightly/opt:
|
|||
symbol: tc(N)
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-android
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
max-run-time: 7200
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
|
@ -369,4 +368,5 @@ android-aarch64-nightly/opt:
|
|||
custom-build-variant-cfg: aarch64
|
||||
tooltool-downloads: internal
|
||||
toolchains:
|
||||
- linux64-gcc
|
||||
- linux64-sccache
|
||||
|
|
|
@ -1,88 +1,18 @@
|
|||
FROM debian:stretch-20170620
|
||||
MAINTAINER Nick Alexander <nalexander@mozilla.com>
|
||||
# TODO remove VOLUME below when the base image is updated next.
|
||||
FROM taskcluster/centos6-build-upd:0.1.8.20170808150401
|
||||
MAINTAINER Nick Alexander <nalexander@mozilla.com>
|
||||
|
||||
### Add worker user and setup its workspace.
|
||||
RUN mkdir -p /builds && \
|
||||
useradd -u 1000 -d /builds/worker -s /bin/bash -m worker && \
|
||||
chown -R worker:worker /builds && \
|
||||
mkdir -p /builds/worker/workspace && \
|
||||
chown -R worker:worker /builds/worker/workspace
|
||||
|
||||
# Declare default working folder
|
||||
WORKDIR /builds/worker
|
||||
# BEGIN ../desktop-build/Dockerfile
|
||||
|
||||
VOLUME /builds/worker/checkouts
|
||||
VOLUME /builds/worker/workspace
|
||||
VOLUME /builds/worker/tooltool-cache
|
||||
|
||||
# Add build scripts; these are the entry points from the taskcluster worker, and
|
||||
# operate on environment variables
|
||||
# %include taskcluster/docker/desktop-build/bin/
|
||||
COPY topsrcdir/taskcluster/docker/desktop-build/bin/ /builds/worker/bin/
|
||||
RUN chmod +x /builds/worker/bin/*
|
||||
|
||||
# Add common hg configuration.
|
||||
# %include taskcluster/docker/centos6-build/hgrc
|
||||
COPY topsrcdir/taskcluster/docker/centos6-build/hgrc /builds/worker/.hgrc
|
||||
RUN chown worker:worker /builds/worker/.hgrc
|
||||
|
||||
# Set variables normally configured at login, by the shell' parent process,
|
||||
# these are taken from GNU su manual. Also set DEBIAN_FRONTEND to advise
|
||||
# apt-get of our situation.
|
||||
ENV HOME=/builds/worker \
|
||||
SHELL=/bin/bash \
|
||||
USER=worker \
|
||||
LOGNAME=worker \
|
||||
HOSTNAME=taskcluster-worker \
|
||||
DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
# Set a default command useful for debugging.
|
||||
CMD ["/bin/bash", "--login"]
|
||||
|
||||
# Set apt sources list to a snapshot.
|
||||
COPY sources.list /etc/apt/
|
||||
|
||||
# We need i386 packages for the Android SDK.
|
||||
# Once https://bugzilla.mozilla.org/show_bug.cgi?id=1370119 is in-tree, we
|
||||
# will have 64-bit builds of everything, and we can then remove this and
|
||||
# the :i386 packages we install below.
|
||||
RUN dpkg --add-architecture i386
|
||||
|
||||
RUN apt-get update -q && \
|
||||
apt-get install -yyq --no-install-recommends \
|
||||
autoconf2.13 \
|
||||
build-essential \
|
||||
base-files \
|
||||
ca-certificates \
|
||||
ccache \
|
||||
cmake \
|
||||
curl \
|
||||
gnupg \
|
||||
make \
|
||||
procps \
|
||||
python \
|
||||
python-cryptography \
|
||||
python-dev \
|
||||
python-pip \
|
||||
python-setuptools \
|
||||
python-virtualenv \
|
||||
sudo \
|
||||
tar \
|
||||
unzip \
|
||||
uuid \
|
||||
wget \
|
||||
xz-utils \
|
||||
yasm \
|
||||
zip \
|
||||
libstdc++6:i386 \
|
||||
libgcc1:i386 \
|
||||
zlib1g:i386 \
|
||||
libncurses5:i386 \
|
||||
&& \
|
||||
apt-get clean
|
||||
|
||||
# %include python/mozbuild/mozbuild/action/tooltool.py
|
||||
COPY topsrcdir/python/mozbuild/mozbuild/action/tooltool.py /build/tooltool.py
|
||||
COPY topsrcdir/python/mozbuild/mozbuild/action/tooltool.py /builds/tooltool.py
|
||||
COPY topsrcdir/python/mozbuild/mozbuild/action/tooltool.py /setup/tooltool.py
|
||||
COPY topsrcdir/python/mozbuild/mozbuild/action/tooltool.py /tmp/tooltool.py
|
||||
|
||||
# %include testing/mozharness/external_tools/robustcheckout.py
|
||||
COPY topsrcdir/testing/mozharness/external_tools/robustcheckout.py /usr/local/mercurial/robustcheckout.py
|
||||
|
@ -99,52 +29,70 @@ COPY topsrcdir/taskcluster/docker/recipes/install-make.sh /setup/install-make.sh
|
|||
# %include taskcluster/docker/recipes/install-cmake.sh
|
||||
COPY topsrcdir/taskcluster/docker/recipes/install-cmake.sh /setup/install-cmake.sh
|
||||
|
||||
# %include taskcluster/docker/recipes/debian-build-system-setup.sh
|
||||
COPY topsrcdir/taskcluster/docker/recipes/debian-build-system-setup.sh /setup/system-setup.sh
|
||||
# %include taskcluster/docker/recipes/centos6-build-system-setup.sh
|
||||
COPY topsrcdir/taskcluster/docker/recipes/centos6-build-system-setup.sh /setup/system-setup.sh
|
||||
|
||||
# %include taskcluster/docker/recipes/centos-install-debug-symbols.sh
|
||||
COPY topsrcdir/taskcluster/docker/recipes/centos-install-debug-symbols.sh /setup/install-debug-symbols.sh
|
||||
|
||||
# TODO remove once base image doesn't install Mercurial
|
||||
RUN pip uninstall -y Mercurial
|
||||
|
||||
RUN bash /setup/system-setup.sh
|
||||
|
||||
# Add wrapper scripts for xvfb allowing tasks to easily retry starting up xvfb.
|
||||
# Add wrapper scripts for xvfb allowing tasks to easily retry starting up xvfb
|
||||
# %include taskcluster/docker/recipes/xvfb.sh
|
||||
COPY topsrcdir/taskcluster/docker/recipes/xvfb.sh /builds/worker/scripts/xvfb.sh
|
||||
|
||||
# %include taskcluster/docker/recipes/run-task
|
||||
COPY topsrcdir/taskcluster/docker/recipes/run-task /builds/worker/bin/run-task
|
||||
|
||||
# Add pip configuration, among other things.
|
||||
COPY dot-config /builds/worker/.config
|
||||
# Add configuration
|
||||
COPY dot-config /builds/worker/.config
|
||||
|
||||
# Generate machine uuid file
|
||||
RUN dbus-uuidgen --ensure=/var/lib/dbus/machine-id
|
||||
|
||||
# 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.
|
||||
# %include taskcluster/docker/desktop-build/oauth.txt
|
||||
COPY topsrcdir/taskcluster/docker/desktop-build/oauth.txt /builds/worker/
|
||||
ADD oauth.txt /builds/worker/
|
||||
|
||||
# Add a stubbed out buildprops, which keeps mozharness from choking.
|
||||
# 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).
|
||||
# %include taskcluster/docker/desktop-build/buildprops.json
|
||||
COPY topsrcdir/taskcluster/docker/desktop-build/buildprops.json /builds/worker/
|
||||
# the directory where mozharness is run (not its --work-dir)
|
||||
ADD buildprops.json /builds/worker/
|
||||
|
||||
# END ../desktop-build/Dockerfile
|
||||
|
||||
# Reset user/workdir from parent image so we can install software.
|
||||
WORKDIR /
|
||||
USER root
|
||||
|
||||
# Update base.
|
||||
RUN rpm --rebuilddb && yum upgrade -y
|
||||
|
||||
# Install Sonatype Nexus. Cribbed directly from
|
||||
# https://github.com/sonatype/docker-nexus/blob/fffd2c61b2368292040910c055cf690c8e76a272/oss/Dockerfile.
|
||||
|
||||
# Observe missing --no-install-recommends, in order to install glib2.0/gconf/etc.
|
||||
RUN apt-get install -yyq \
|
||||
libgconf2-4 \
|
||||
libgnome2-0 \
|
||||
openjdk-8-jdk-headless \
|
||||
&& \
|
||||
apt-get clean
|
||||
# Install the screen package here to use with xvfb.
|
||||
# Move installation to base centos6-build image once Bug 1272629 is fixed
|
||||
# tzdata-java is symlinked from the JRE: see https://bugzilla.redhat.com/show_bug.cgi?id=1130800
|
||||
RUN rpm --rebuilddb && yum install -y \
|
||||
createrepo \
|
||||
curl \
|
||||
screen \
|
||||
sudo \
|
||||
tar \
|
||||
tzdata-java \
|
||||
unzip \
|
||||
wget \
|
||||
zip \
|
||||
&& yum clean all
|
||||
|
||||
ENV NEXUS_VERSION=2.12.0-01 \
|
||||
NEXUS_SHA1SUM=1a9aaad8414baffe0a2fd46eed1f41b85f4049e6 \
|
||||
NEXUS_WORK=/builds/worker/workspace/nexus
|
||||
ENV NEXUS_VERSION 2.12.0-01
|
||||
ENV NEXUS_SHA1SUM 1a9aaad8414baffe0a2fd46eed1f41b85f4049e6
|
||||
|
||||
RUN mkdir -p /opt/sonatype/nexus
|
||||
|
||||
|
@ -163,7 +111,10 @@ RUN tar zxf nexus-${NEXUS_VERSION}-bundle.tar.gz \
|
|||
&& rm -rf /tmp/nexus-${NEXUS_VERSION}-bundle.tar.gz
|
||||
|
||||
# So that we don't have to RUN_AS_USER=root.
|
||||
RUN chown -R worker:worker /opt/sonatype
|
||||
RUN chown -R worker:worker /opt/sonatype/nexus/
|
||||
|
||||
# Back to the workdir, matching desktop-build.
|
||||
# Back to the centos6-build workdir, matching desktop-build.
|
||||
WORKDIR /builds/worker
|
||||
|
||||
# Set a default command useful for debugging
|
||||
CMD ["/bin/bash", "--login"]
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"properties": {
|
||||
"buildername": ""
|
||||
},
|
||||
"sourcestamp": {
|
||||
"changes": []
|
||||
},
|
||||
"comments": "TaskCluster Job"
|
||||
}
|
|
@ -0,0 +1,2 @@
|
|||
taskcluster_clientId = None
|
||||
taskcluster_accessToken = None
|
|
@ -1,3 +0,0 @@
|
|||
deb [check-valid-until=no] http://snapshot.debian.org/archive/debian/20170830T000511Z/ stretch main
|
||||
deb [check-valid-until=no] http://snapshot.debian.org/archive/debian/20170830T000511Z/ stretch-updates main
|
||||
deb [check-valid-until=no] http://snapshot.debian.org/archive/debian-security/20170830T000511Z/ stretch/updates main
|
|
@ -1,11 +0,0 @@
|
|||
#!/bin/bash
|
||||
# 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/.
|
||||
|
||||
cd /setup
|
||||
|
||||
. /setup/common.sh
|
||||
. /setup/install-mercurial.sh
|
||||
|
||||
rm -rf /setup
|
|
@ -27,23 +27,6 @@ if [ -f /etc/lsb-release ]; then
|
|||
|
||||
CERT_PATH=/etc/ssl/certs/ca-certificates.crt
|
||||
|
||||
elif [ -f /etc/os-release ]; then
|
||||
. /etc/os-release
|
||||
|
||||
if [ "${ID}" = "debian" -a "${VERSION_ID}" = "9" ]; then
|
||||
if [ -f /usr/bin/pip2 ]; then
|
||||
PIP_PATH=/usr/bin/pip2
|
||||
else
|
||||
echo "We currently require Python 2.7 and /usr/bin/pip2 to run Mercurial"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
echo "Unsupported debian-like system with ID '${ID}' and VERSION_ID '${VERSION_ID}'"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
CERT_PATH=/etc/ssl/certs/ca-certificates.crt
|
||||
|
||||
elif [ -f /etc/centos-release ]; then
|
||||
CENTOS_VERSION=`rpm -q --queryformat '%{VERSION}' centos-release`
|
||||
if [ "${CENTOS_VERSION}" = "6" ]; then
|
||||
|
|
|
@ -19,10 +19,17 @@ tar cJf android-sdk-linux.tar.xz android-sdk-linux
|
|||
mkdir -p /builds/worker/private/android-sdk
|
||||
mv android-sdk-linux.tar.xz /builds/worker/private/android-sdk
|
||||
|
||||
cp -R ${NEXUS_WORK}/storage/jcenter jcenter
|
||||
cp -R $WORKSPACE/build/src/java_home java_home
|
||||
tar cJf java_home.tar.xz java_home
|
||||
|
||||
# We can't redistribute Java publicly.
|
||||
mkdir -p /builds/worker/private/java_home
|
||||
mv java_home.tar.xz /builds/worker/private/java_home
|
||||
|
||||
cp -R $WORKSPACE/nexus/storage/jcenter jcenter
|
||||
tar cJf jcenter.tar.xz jcenter
|
||||
|
||||
cp -R ${NEXUS_WORK}/storage/google google
|
||||
cp -R $WORKSPACE/nexus/storage/google google
|
||||
tar cJf google.tar.xz google
|
||||
|
||||
# The Gradle wrapper will have downloaded and verified the hash of exactly one
|
||||
|
|
|
@ -8,10 +8,21 @@ echo "running as" $(id)
|
|||
|
||||
set -v
|
||||
|
||||
mkdir -p ${NEXUS_WORK}/conf
|
||||
cp /builds/worker/workspace/build/src/taskcluster/scripts/builder/build-android-dependencies/nexus.xml ${NEXUS_WORK}/conf/nexus.xml
|
||||
mkdir -p ${WORKSPACE}/nexus/conf
|
||||
cp /builds/worker/workspace/build/src/taskcluster/scripts/builder/build-android-dependencies/nexus.xml ${WORKSPACE}/nexus/conf/nexus.xml
|
||||
|
||||
RUN_AS_USER=worker /opt/sonatype/nexus/bin/nexus restart
|
||||
# Populate /builds/worker/workspace/build/src/java_home.
|
||||
. $WORKSPACE/build/src/taskcluster/scripts/builder/build-android-dependencies/repackage-jdk-centos.sh
|
||||
|
||||
mv $WORKSPACE/java/usr/lib/jvm/java_home $WORKSPACE/build/src/java_home
|
||||
|
||||
export JAVA_HOME=$WORKSPACE/build/src/java_home
|
||||
export PATH=$PATH:$JAVA_HOME/bin
|
||||
|
||||
# Populate /builds/worker/.mozbuild/android-sdk-linux.
|
||||
python2.7 $WORKSPACE/build/src/python/mozboot/mozboot/android.py --artifact-mode --no-interactive
|
||||
|
||||
RUN_AS_USER=worker NEXUS_WORK=$WORKSPACE/nexus /opt/sonatype/nexus/bin/nexus restart
|
||||
|
||||
# Wait "a while" for Nexus to actually start. Don't fail if this fails.
|
||||
wget --quiet --retry-connrefused --waitretry=2 --tries=100 \
|
||||
|
@ -23,9 +34,3 @@ curl http://localhost:8081/nexus/service/local/status || true
|
|||
|
||||
# Verify Nexus has actually started. Fail if this fails.
|
||||
curl --fail --silent --location http://localhost:8081/nexus/service/local/status | grep '<state>STARTED</state>'
|
||||
|
||||
# It's helpful when debugging to see the repository configurations.
|
||||
curl http://localhost:8081/nexus/service/local/repositories || true
|
||||
|
||||
# Populate /builds/worker/.mozbuild/android-sdk-linux.
|
||||
python2.7 /builds/worker/workspace/build/src/python/mozboot/mozboot/android.py --artifact-mode --no-interactive
|
||||
|
|
Загрузка…
Ссылка в новой задаче