5

我按照官方GitHub 教程中描述的步骤将 Firebase CLI(命令行)与 CI 系统(没有浏览器集成的简单操作系统)一起使用。我使用我的 PC 登录 firebase 并获取令牌(来自浏览器程序)。我在另一个系统上复制了令牌,并在所有命令中传递了令牌,但它不起作用。我收到消息说我需要进行身份验证才能执行这些操作:

firebase login 
firebase prefs:token 

复制并在其他系统中使用令牌

firebase list --token sdfgfdsg...... 

有什么问题?

4

3 回答 3

7

使用安装了浏览器和 firebase 工具的机器,运行firebase login:ci --no-localhostfirebase CLI 工具生成的密钥并将其粘贴到环境变量中并命名FIREBASE_TOKEN(不是$FIREBASE_TOKEN)。

在您的部署中,说

npm install -g firebase-tools
firebase deploy
于 2017-05-16T01:06:33.343 回答
5

确保不要firebase logout在您的 PC 上运行,因为这样做会使令牌无效(实际上,我们正在努力使这一点更清晰)。

如果没有,请确保您引用了令牌:

firebase list --token '-K.....|.....'

auth 令牌中包含的字符可能会导致 shell 错误,如果未引用该命令,则该命令无法正确完成。

于 2015-10-14T22:42:19.450 回答
0

我在 Travis 上遇到了同样的问题,问题是 travis 使用的令牌的加密,你必须确保你已经正确地转义了令牌内的管道符号。在我的情况下,像 travis encrypt 'FIREBASE_TOKEN=-jksdjksjksdj\|ksdkjsjk'

希望这会有所帮助,因为如果您这样做,我可以向您保证:

firebase 部署 --token '-jksdjksjksdj|ksdkjsjk'

在特拉维斯它只是工作。firebase 由于某种原因无法识别您的情况下的令牌,您需要找到该原因

看看这个: http ://docs.travis-ci.com/user/encryption-keys/

于 2015-10-18T13:06:50.877 回答