Smartphone Test Farmの自動起動設定をしてみました。(最終的に諦めてますが。)
概要
基本的には参考サイトの通りにインストールします。
特に問題もなくインストール出来たのですが、少し運用のことを考えて、手順を追加しました。
- RethinkDBに自動起動設定をして、Web UIへのアクセスを可能とする。
- adbに自動起動設定をする。
- STFを自動起動設定する。(諦めました)
STFのインストール
以下のコマンド参考サイトで紹介されているので、詳細はそちらを御覧ください。
ここでは、超単純にコマンドだけ記載しておきmす。
[root@stf ~]# yum install wget git gcc gcc-c++
[root@stf ~]# git clone https://github.com/creationix/nvm.git ~/.nvm
[root@stf ~]# source ~/.nvm/nvm.sh
[root@stf ~]# nvm install 0.12.7
[root@stf ~]# wget http://download.rethinkdb.com/centos/7/`uname -m`/rethinkdb.repo -O /etc/yum.repos.d/rethinkdb.repo
[root@stf ~]# yum install rethinkdb android-tools GraphicsMagick zeromq zeromq-devel protobuf yasm
[root@stf ~]# npm install -g stf
各種自動起動設定
RethinkDBの設定
過去の記事を参考にセットアップをします。
Web UIにアクセスしたいのですが、STFの起動させるディレクトリにrethinkdb_data
というディレクトリがないと行けないので、シンボリックリンクを作成します。
[root@stf ~]# ln -s /var/lib/rethinkdb/default /root/rethinkdb_data
[root@stf ~]# systemctl enable rethinkdb
[root@stf ~]# systemctl start rethinkdb
adbの設定
yumでインストールしているとsystemd用のユニットファイルは自動的にインストールされています。
[root@stf ~]# systemctl enable adb
[root@stf ~]# systemctl start adb
STFの自動起動設定(途中で諦めました)
自動起動設定できるといいなと思ったので、試してみました。
本家ではDockerを使った手順が紹介されているっぽいですので、ちゃんとやる場合はそっちに従ったほうがいいかも。
私は気力が尽きました。
以下の方法は自動起動は最終的にエラーになるのですが、systemctlコマンドで起動は出来ます。
/usr/lib/systemd/system/stf.service
[Unit]
Description = Smartphone Test Farm daemon
After = NetworkManager.service rethinkdb@default.service adb.service
[Service]
ExecStartPre = cd /root
ExecStart = /root/.nvm/versions/node/v0.12.7/bin/node /root/.nvm/versions/node/v0.12.7/bin/stf local --public-ip {IPアドレス}
Restart = always
Type = simple
User = root
Group = root
[Install]
WantedBy = multi-user.target
STFの自動起動設定。
[root@stf ~]# systemctl enable stf
[root@stf ~]# systemctl start stf