blob: 6b5ac09ab04afe003f8aaa6f43a0fc90deeb5c62 [file] [log] [blame]
gnzlbg37a0bd32018-11-19 15:49:56 +01001#!/usr/bin/env sh
Alex Crichtonc2842462016-11-16 14:12:12 -08002# Copyright 2016 The Rust Project Developers. See the COPYRIGHT
3# file at the top-level directory of this distribution and at
4# http://rust-lang.org/COPYRIGHT.
5#
6# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
7# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
8# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
9# option. This file may not be copied, modified, or distributed
10# except according to those terms.
11
12set -ex
13
14# Prep the SDK and emulator
15#
16# Note that the update process requires that we accept a bunch of licenses, and
17# we can't just pipe `yes` into it for some reason, so we take the same strategy
18# located in https://github.com/appunite/docker by just wrapping it in a script
19# which apparently magically accepts the licenses.
20
21mkdir sdk
Tom Parker-Shemiltb46b6e22018-11-26 21:34:43 +000022curl --retry 5 https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip -O
Marco A L Barbosaa9115d52017-10-27 16:46:32 -020023unzip -d sdk sdk-tools-linux-3859397.zip
Alex Crichtonc2842462016-11-16 14:12:12 -080024
Marco A L Barbosa599eec32017-02-23 16:08:29 -030025case "$1" in
26 arm | armv7)
27 abi=armeabi-v7a
28 ;;
29
30 aarch64)
31 abi=arm64-v8a
32 ;;
33
34 i686)
35 abi=x86
36 ;;
37
Marco A L Barbosae1c6ded2017-04-19 11:03:19 -030038 x86_64)
39 abi=x86_64
40 ;;
41
Marco A L Barbosa599eec32017-02-23 16:08:29 -030042 *)
43 echo "invalid arch: $1"
44 exit 1
45 ;;
46esac;
47
Marco A L Barbosaa9115d52017-10-27 16:46:32 -020048# --no_https avoids
gnzlbg45adbf82019-01-21 19:54:17 +010049 # javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: No trusted certificate found
50yes | ./sdk/tools/bin/sdkmanager --licenses --no_https
51yes | ./sdk/tools/bin/sdkmanager --no_https \
Marco A L Barbosaa9115d52017-10-27 16:46:32 -020052 "emulator" \
53 "platform-tools" \
54 "platforms;android-24" \
55 "system-images;android-24;default;$abi"
Marco A L Barbosa599eec32017-02-23 16:08:29 -030056
Marco A L Barbosaa9115d52017-10-27 16:46:32 -020057echo "no" |
58 ./sdk/tools/bin/avdmanager create avd \
gnzlbg37a0bd32018-11-19 15:49:56 +010059 --name "${1}" \
Marco A L Barbosaa9115d52017-10-27 16:46:32 -020060 --package "system-images;android-24;default;$abi"