Travis CIからnpmパッケージを自動公開する
参考:https://www.npmjs.com/package/travis-deploy-example参考:https://docs.travis-ci.com/user/deployment/npm/ 手順 1: […]
目次
参考:https://www.npmjs.com/package/travis-deploy-example
参考:https://docs.travis-ci.com/user/deployment/npm/
手順
1: npmのtoken取得
npmにアクセスするためのtokenが必要となります。https://www.npmjs.com/settings/{YOUR_USERNAME}/tokens
からCreate New Token
で取得しましょう。このtokenは生成時しか表示されませんので要注意です。
2: Travis CIで環境変数を設定
Travis CIではプロジェクト毎に環境変数が設定できます。先ほど取得したtokenをNPM_TOKEN
のような名前で環境変数にいれておきましょう。
TravisのCLIコマンドから暗号化することも可能です。どちらにせよ他のユーザーがtokenを見れないようにすることが重要です。
3: .travis.ymlに公開設定を書く
最後にYAMLへ公開のための設定を記述します。
language: node_js
node_js:
- '8'
install:
- npm install
script:
- npm run lint
- npm test
deploy:
provider: npm
email: '[email protected]'
api_key: $NPM_TOKEN
on:
tags: true
このように書くことで、scriptが実行された後にdeploy
に書かれたアカウント情報でnpm publish
が実行されます。
on
部分に公開する条件を指定できます。上記のサンプルではgit tag
でタグ付けされたものがpushされた場合のみ公開されます。以下のように書くことで指定したブランチのみで公開ということも可能です。
deploy:
...
on:
branch: production
4: 実際に公開する
あとはいつものようにGit操作を行って更新するだけです。
$ git add ./
$ git commit -m "new feature"
$ git tag v1.0.0
$ git push origin master v1.0.0
公開作業についてはTravis CIが自動で行ってくれるので、公開完了のメールが届くのを待ちましょう。