我正在尝试将travis ci集成到我的Firebase应用程序中以自动部署,但失败并显示401错误。这是我的.travis.yml
language: node_js
node_js:
- '8'
deploy:
provider: firebase
token:
secure: "BnzKtrzBaI/uLHoezYpBVqQ/VwhIyil...n0jAuBNrTI="
message: build $TRAVIS_BUILD_NUMBER $TRAVIS_BRANCH/$COMMIT_HASH
,我收到以下错误消息:
Error: HTTP Error: 401, Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.
我不确定是怎么回事。
答案 0 :(得分:4)
我以前没有在Travis CI中使用过provider
函数,但是部署到Firebase托管的另一种选择是安装firebase-tools
并使用CLI。
language: node_js
node_js: 8
before_script:
- npm install firebase-tools -g
script:
- firebase deploy --only hosting --token "BnzK...rTI="
-编辑:有关Cloud Functions
和Branch Filters
的更多信息。 -
如果还要部署Cloud Functions,则需要在travis上安装node_modules
,然后才能进行部署。
language: node_js
node_js: 8
before_script:
- npm install firebase-tools -g
- cd functions && npm install
script:
- firebase deploy --only hosting,functions --token "BnzK...rTI="
如果仅在对master
分支进行更改时才部署,则可以在此过滤器中添加。
language: node_js
node_js: 8
before_script:
- npm install firebase-tools -g
- cd functions && npm install
script:
- firebase deploy --only hosting,functions --token "BnzK...rTI="
branches:
only:
- master