Travis CI をセットアップして、いくつかのスクリプトを実行します。
- いくつかの静的ページを Github ページにデプロイする
- NPM パッケージを npmjs にデプロイする
項目 1 は機能しますが、項目 2 は機能しません。
私のtravis.yml
ファイルは次のようになります。
language: node_js
node_js:
- '10'
script:
- gulp build
- gulp npmDist
deploy:
- provider: pages
local_dir: dist-site/
skip_cleanup: true
github_token: "$GITHUB_TOKEN"
on:
branch: master
- provider: npm
email: myemail@mydomain.com
api_key:
secure: THE-API-KEY-I-GOT-BY-CREATING-A-TOKEN-ON-NPMJS-AND-ENCRYPTING-IT-USING-TRAVIS-ENCRYPT-COMMAND-IN-TERMINAL
on:
tags: true
repo: githubaccount/reponame
all_branches: true
スクリプトを 2 つの方法でトリガーします。 - マスターにマージすると、GitHub ページにデプロイされます。- タグを作成してマスターにプッシュすると、パッケージが npmjs にデプロイされます。
前述のように、ファイルの最初の部分は実際に GitHub ページにデプロイされるため、機能します。
npmjs から取得したエラーは次のとおりです。
npm ERR! publish Failed PUT 401
npm ERR! code E401
npm ERR! You must be logged in to publish packages. : package-name
(ああ、奇妙なことに、明らかに何か問題があるにもかかわらず、Travis は「Build Passed」と成功ステータス (緑) で戻ってきます)
これが理にかなっていると思いますか?助けてくれてありがとう。