Travis CI で Firebase にデプロイする
Update: 2018-07-01
Firebase の hosting と functions を Travis CI でデプロイしてみました。 設定ファイルはこんな感じです。
language: node_js
node_js:
  - "8"
before_deploy: "yarn build"
deploy:
  provider: firebase
  skip_cleanup: true
  token:
    secure: xxxxxxxxxxxxxxxxxx
私の好みで npm ではなく yarn を使っているのですが、
node_js のバージョンがデフォルトではうまくいきません。
"6" より新しければだいじょうぶかな。。。
hosting の対象は Vuetify で作成した SPA ( Single-page application )
で、ビルドが必要です。
そのため deploy.skip_cleanup: true の設定を追加し、
before_deploy: "yarn build" でデプロイの前にビルドします。
npm の場合は yarn を npm に置き換えてください。
Firebase にデプロイするための設定はこちら。 https://docs.travis-ci.com/user/deployment/firebase/
トークンを暗号化するために travis ツールが必要ですね。 まず、 Ruby がなければインストールして、 gem コマンドで入れてやります。
https://github.com/travis-ci/travis.rb#installation
$ gem install travis -v 1.8.8 --no-rdoc --no-ri
travis encrypt コマンドを実行すると .travis.yml
に環境変数の設定らしきものが追加されるのですが、
そっちではなく上記の deploy.token.secure にコピペします。
でき上がった .travis.yml を git push すると
Travis が自動でビルドとデプロイをして、、、、あ、エラー、、、
エラーメッセージに従って firebase-functions と firebase-admin
を package.json に入れてやるとうまくいきました。
$ yarn add firebase-functions -D
$ yarn add firebase-admin -D
npm の場合は npm install -D です。
Tag: Node JavaScript TravisCI Firebase
        みちのぶのねぐら