Auto merge of #21835 - servo:tc-android-arm32, r=jdm

Taskcluster: add Android build

[Example green build](https://tools.taskcluster.net/groups/FyF53cdfSKC39eqB3OAZVQ/tasks/ff23qoM3TzSCHrinmzU7gQ/details), with `servoapp.apk` in public artifacts.

This installs some dependencies within the task for now. I’ll follow up with moving some things like the NDK download to a Docker image, but even as it is the task completes in 17 minutes.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/21835)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2018-09-28 12:14:54 -04:00 committed by GitHub
commit 58039c10b0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -15,11 +15,13 @@ def main():
if task_for == "github-push":
linux_tidy_unit()
#linux_wpt()
android_arm32()
# https://tools.taskcluster.net/hooks/project-servo/daily
elif task_for == "daily":
daily_tasks_setup()
with_rust_nightly()
android_arm32()
else:
raise ValueError("Unrecognized $TASK_FOR value: %r", task_for)
@ -70,6 +72,28 @@ def with_rust_nightly():
)
def android_arm32():
return decision.find_or_create_task(
index_bucket="build.android_armv7_release",
index_key=os.environ["GIT_SHA"], # Set in .taskcluster.yml
index_expiry=build_artifacts_expiry,
task_name="Android ARMv7: build",
# file: NDK parses $(file $SHELL) to tell x86_64 from x86
# wget: servo-media-gstreamers build script
script="""
apt-get install -y --no-install-recommends openjdk-8-jdk-headless file wget
./etc/ci/bootstrap-android-and-accept-licences.sh
./mach build --android --release
""",
artifacts=[
"/repo/target/armv7-linux-androideabi/release/servoapp.apk",
"/repo/target/armv7-linux-androideabi/release/servoview.aar",
],
**build_kwargs
)
def linux_wpt():
release_build_task = linux_release_build()
total_chunks = 2