要件
ハードウェア要件
- CentOS-6.4
- CPU: 6core, 64bit
- MEM: 12GB
- HDD: 80GB
ソフトウェア要件
- Jenkins
- Androidの各バージョンのエミュレータを複数搭載
失敗した理由
- エミュレータが64bitCPUだとdevice offlineの状態のままになる?
諦めた理由
- CircleCIを使ったほうが早くて確実な稼働実績があったため
- ソースコードの機密性保持は権限管理をすることである程度妥協した
作業手順
android-sdk インストール
android-sdk 設置
- ここからダウンロード (sdk only)
$ ll /usr/local/share/downloaded/android-sdk
合計 164180
-rwxr-xr-x 1 root root 168119905 5月 8 10:55 2015 android-sdk_r24.2-linux.tgz
tgz解凍
sudo tar -zxvf /usr/local/share/downloaded/android-sdk/android-sdk_r24.2-linux.tgz -C /usr/local/lib/
android-sdk インストール
sudo /usr/local/lib/android-sdk-linux/tools/android update sdk -u -a -t 1,2,3,22,23,24,25,26,27,28,126,127,61,62,63,68,69,70,73,74,75,76,77,78,80,81
環境変数のセット
export ANDROID_HOME=/usr/local/lib/android-sdk-linux/
32bit glibc のインストール
rpmのダウンロード
wget http://ftp.riken.jp/Linux/centos/6/updates/x86_64/Packages/glibc-2.12-1.149.el6_6.5.i686.rpm -P /usr/local/share/downloaded/glibc/
wget ftp://195.220.108.108/linux/opensuse/distribution/11.4/repo/oss/suse/i586/libfreebl3-3.12.9-4.3.i586.rpm -P /usr/local/share/downloaded/libfreebl3/
wget ftp://mirror.switch.ch/pool/4/mirror/scientificlinux/6.4/x86_64/os/Packages/libstdc++-4.4.7-3.el6.i686.rpm -P /usr/local/share/downloaded/libstdc++/
wget ftp://ftp.okhysing.is/redhat/6.4/os/x86_64/Packages/libgcc-4.4.7-3.el6.i686.rpm -P /usr/local/share/downloaded/libgcc/
wget ftp://rpmfind.net/linux/centos/6.6/os/i386/Packages/zlib-1.2.3-29.el6.i686.rpm -P /usr/local/share/downloaded/zlib/
chown
sudo chown root:root ¥
/usr/local/share/downloaded/glibc/glibc-2.12-1.149.el6_6.5.i686.rpm ¥
/usr/local/share/downloaded/libfreebl3/libfreebl3-3.12.9-4.3.i586.rpm ¥
/usr/local/share/downloaded/libstdc++/libstdc++-4.4.7-3.el6.i686.rpm ¥
/usr/local/share/downloaded/libgcc/libgcc-4.4.7-3.el6.i686.rpm ¥
/usr/local/share/downloaded/zlib/zlib-1.2.3-29.el6.i686.rpm
インストール
sudo rpm -ivh ¥
/usr/local/share/downloaded/glibc/glibc-2.12-1.149.el6_6.5.i686.rpm ¥
/usr/local/share/downloaded/libfreebl3/libfreebl3-3.12.9-4.3.i586.rpm ¥
/usr/local/share/downloaded/libstdc++/libstdc++-4.4.7-3.el6.i686.rpm ¥
/usr/local/share/downloaded/libgcc/libgcc-4.4.7-3.el6.i686.rpm ¥
/usr/local/share/downloaded/zlib/zlib-1.2.3-29.el6.i686.rpm
javaのインストール
jdkの設置
$ ll /usr/local/share/downloaded/jdk/
合計 169216
-rw-r--r-- 1 root root 173271626 5月 11 11:21 2015 jdk-8u45-linux-x64.gz
gz解凍
sudo tar -zvvf /usr/local/share/downloaded/jdk/jdk-8u45-linux-x64.gz -C /usr/local/lib/
javaの優先度を変更する
sudo /usr/sbin/alternatives --install /usr/bin/java java /usr/local/lib/jdk1.8.0_45/bin/java 180000
javaの優先度を確認する
$ sudo /usr/sbin/alternatives --config java
3 プログラムがあり 'java' を提供します。
選択 コマンド
-----------------------------------------------
1 /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java
2 /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
*+ 3 /usr/local/lib/jdk1.8.0_45/bin/java
Enter を押して現在の選択 [+] を保持するか、選択番号を入力します:
jenkinsのインストール
yumリポジトリ追加
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
jenkinsインストール
sudo yum install jenkins
サービス起動
sudo service jenkins start
OS起動時に自動的にjenkinsが起動するように設定
sudo chkconfig jenkins on
VirtualBoxをインストールする
dkmsをインストール
sudo yum install dkms
yumリポジトリ追加
sudo wget http://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo -P /etc/yum.repos.d/
VirtualBoxのインストール
sudo yum install VirtualBox-4.3
VirtualBoxのセットアップ
sudo /etc/init.d/vboxdrv setup
共有ライブラリのsymlinkを貼る
sudo ln -s /usr/lib64/nvidia-graphics-310.19/libGL.so.1 /usr/lib/virtualbox/libGL.so.1
sudo ln -s /usr/lib64/nvidia-graphics-310.19/libnvidia-tls.so.310.19 /usr/lib/virtualbox/libnvidia-tls.so.310.19
sudo ln -s /usr/lib64/nvidia-graphics-310.19/libnvidia-glcore.so.310.19 /usr/lib/virtualbox/libnvidia-glcore.so.310.19