Android アプリをビルドするには
基本、circle.yml
に設定を記載するだけです。
ビルド設定ファイル サンプル
circle.yml
general:
artifacts:
- ./app/build/outputs/apk/
machine:
java:
version: oraclejdk7
environment:
ANDROID_HOME: /usr/local/android-sdk-linux
test:
override:
- echo "Nothing to do here"
post:
- ./gradlew compileDevelopReleaseSources
deployment:
upload:
branch: [master]
commands:
- ./gradlew assembleDevelopRelease
- ./gradlew uploadDeployGateDevelop
- ./gradlew assembleProductRelease
- ./gradlew uploadDeployGateProduct
build.grade
apply plugin: 'com.android.application'
apply plugin: 'deploygate'
android {
...
signingConfigs {
release {
storeFile file('../release.keystore')
storePassword System.getenv('STORE_PASSWORD')
keyAlias System.getenv('KEY_ALIAS')
keyPassword System.getenv('KEY_PASSWORD')
}
}
...
}
...
deploygate {
userName = System.getenv('DEPLOYGATE_USERNAME')
token = System.getenv('DEPLOYGATE_API_KEY')
apks {
product {
sourceFile = file("./build/outputs/apk/app-product-release.apk")
}
develop {
sourceFile = file("./build/outputs/apk/app-develop-release.apk")
}
}
}
...
TIPS 集
共通設定
- JDK の設定は Oracle JDK 1.7 を使う
-
artifacts
は設定しておくと、あとから CircleCI の Webページからapkをダウンロードできる
keystore 関連
- keystore ファイルは GitHub リポジトリに含める(※非公開リポジトリの場合)
- key alias と key password は CircleCI の Environment variables に設定する
- https://circleci.com/docs/environment-variables
- build.gradle 内では
System.getenv(key)
で使用できる
デプロイ関連
- DeployGate 使うのがおすすめ
- gradle plugin があるのでそれを使う
- DeployGate の API KEY も Environment variables に設定する
もっとわかりやすいドキュメントないの?
日本語の情報が不足していますので、英語のものも併せて確認するのがよいと思います