この記事は公開されてから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を開き、新しいプロジェクトを作る
2.アプリの情報を入力する
3.対象プロジェクトを選び、ビルドする
4.ビルドしたいブランチを入力する
5.進捗が表示される。完了まで待つ。
以上です!
まとめ
比較的簡単にビルドできるようになりました。 次はAmazon EC2 Container Registry(Docker レジストリ) + CodeBuildを使って、ビルドしてみたいと思います。