LoginSignup
6
7

More than 5 years have passed since last update.

BambooでGradle+Androidビルド

Last updated at Posted at 2014-05-25

環境

bambooはインストール済みとする
さくらVPS ubuntu 14.04

AndroidStduioのプロジェクトを、適当なレポジトリに突っ込んでいる。

ビルドシステムはgradle
テストにはrobolectricを使用

Android関係あんま詳しくないから、複雑な環境だとどうだろ。

前準備

ひとまずビルドできる環境を整える必要がある

#add-apt-repositoryに必要
sudo apt-get install software-properties-common python-software-properties

#oracleのjavaを落とす
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get -y install oracle-java8-installer
sudo apt-get -y install oracle-java8-set-default 

#64bit版の場合はこれがないとビルドしくじる
sudo apt-get install lib32stdc++6
sudo apt-get install lib32z1

AndroidSDKを落としてunzip
私は以下に解凍した

/home/bamboo/android-tool

cd /home/bamboo/android-tool/sdk/tools

#必要なものを調べて…
./android list adk -a -e 
#updateコマンドで入れる
./android update sdk -u -a -t 10

で、レポジトリ上のソースとかを、とりあえずビルドしてみて、ビルドが通るかを確認する。
とりあえず、AndroidStudio側で入れているツール郡を入れておけば間違いはない。

もしかしたらgradleとかも入れないとダメかも。

#適当にプロジェクトをcloneなりしてVPS上に持ってくる
#Bambooを介さずビルドしてみて、正しくビルドできるかを確認しておく

cd .../android-project/hoge
./gradlew clean test

必要そうなものを都度落として、環境を整える…
ビルドが成功すれば、あとはBambooの設定となる

Bambooの設定

レポジトリを指定して、正しくチェックアウトできるか確認の後、
ScriptとJunitTestをタスクとして追加する

PigmyRabbit   worker   Default Job  Edit job configuration   Rabbit Bamboo.png

スクリプトは下記の通りとした

#!/bin/sh

#まずパス関係を設定する
export JAVA_HOME=/usr/lib/jvm/java-8-oracle
export PATH=/usr/lib/jvm/java-8-oracle/bin:$PATH
export CLASSPATH=.:/usr/lib/jvm/java-8-oracle/lib
export ANDROID_HOME=/home/bamboo/android-tool/sdk

#ignoring option MaxPermSize=256m; support was removed in 8.0を回避するためにJAVA_OPTSを設定(ここで結構コケました…)
export JAVA_OPTS="-Xms64m -Xmx128m -XX:MaxMetaspaceSize=128m"

./gradlew clean test

PigmyRabbit   worker   Default Job  Edit job configuration   Rabbit Bamboo2.png

で、JUnit側には
test-results/*.xml
を指定してやって…あとはビルドが通るか確認。

おわり!

6
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
7