expoでみんなが簡単にアプリの最新状況が見られるように、masterにコードがpushされたときにexpoにpublishします。
expコマンドで publish
するだけです。 exp publush
にはtokenというオプションもあるようなのですが
$ exp publish --help
Usage: publish|p [options] [project-dir]
Publishes your project to exp.host
Options:
-q, --quiet Suppress verbose output from the React Native packager.
-s, --send-to [dest] A phone number or e-mail address to send a link to
--non-interactive Fails if an interactive prompt would be required to continue.
-h, --help output usage information
ちょっと調べてもトークンの生成方法がわからないので環境変数 EXPO_ACCOUNT
, EXPO_PASSWORD
でユーザ名とパスワードを設定します。
exp://exp.host/@ku0522a/myapp
というフォーマットでURLが生成されるのでexpoから読み込んでもらうとだれでも簡単に最新版を確認できるようになります
circle.yml
machine:
node:
version: 8.1.3
pre:
- "echo 'Host *' >> $HOME/.ssh/config"
- "echo 'ForwardAgent yes' >> $HOME/.ssh/config"
- "git config --global user.name 'Circle CI'"
- "git config --global user.email 'ku0522a@gmail.com'"
post:
- npm install -g npm@3.x.x --progress=false
environment:
EXPO_ACCOUNT: 'ku0522a'
general:
artifacts:
- "build"
dependencies:
cache_directories:
- "node_modules"
override:
- npm install exp
- ./node_modules/.bin/exp login -u "$EXPO_ACCOUNT" -p "$EXPO_PASSWORD"
- npm install --progress=false:
timeout: 600
database:
override:
- echo "Skipping DB section."
compile:
override:
- exit 0
test:
override:
- echo 'skipping test section.'
deployment:
master_merge:
branch: ['master']
commands:
- ./node_modules/.bin/exp publish