AWS CodeBuildでAndroidをビルドしてみた

2016.12.08

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

まえがき

re:Invent 2016でWerner Vogels氏によるキーノートの中で発表された新サービス、CodeBuildでAndroidでもビルドしたい!

っということでやってみました。

手順

ソースコード

Android Projectに、android-sdk-license とbuildspec.ymlを追加します。 android-sdk-licenseは、$ANDROID_HOME/licenses/android-sdk-license からコピーしておきます。 その理由はこちらを参照してください。

buildspec.ymlはチュートリアルとDockerfileを参考に作りました。

.Project Root
├── SampleAndroidProject.iml
├── android-sdk-license
├── app
├── build
├── build.gradle
├── buildspec.yml
├── gradle
├── gradle.properties
├── gradlew
├── gradlew.bat
├── local.properties
├── settings.gradle
└── test

buildspec.yml

version: 0.1

phases:
install:
commands:
- echo Nothing to do in the install phase...
- sudo apt-get -y install wget
pre_build:
commands:
- echo Nothing to do in the pre_build phase...
build:
commands:
- wget http://dl.google.com/android/android-sdk_r24.4.1-linux.tgz
- tar zxvf android-sdk_r24.4.1-linux.tgz
- mkdir -p android-sdk-linux/licenses
- cp android-sdk-license ./android-sdk-linux/licenses/
- echo sdk.dir=`pwd`/android-sdk-linux > local.properties
- ./gradlew assemble
post_build:
commands:
- echo Build completed on `date`
artifacts:
type: zip
files:
- app/build/outputs/apk/app-debug.apk

CodeBuild

1.CodeBuildを開き、新しいプロジェクトを作る

スクリーンショット_2016-12-07_9_18_14

2.アプリの情報を入力する

スクリーンショット_2016-12-07_9_19_53

スクリーンショット_2016-12-07_9_20_29

スクリーンショット_2016-12-07_9_20_45

3.対象プロジェクトを選び、ビルドする

スクリーンショット_2016-12-07_9_21_13

スクリーンショット_2016-12-07_9_21_23

4.ビルドしたいブランチを入力する

スクリーンショット_2016-12-07_9_21_34

5.進捗が表示される。完了まで待つ。

スクリーンショット_2016-12-07_9_33_38

以上です!

まとめ

比較的簡単にビルドできるようになりました。 次はAmazon EC2 Container Registry(Docker レジストリ) + CodeBuildを使って、ビルドしてみたいと思います。

参考