我无法将我的browserstack凭据用于Travis。如果我不加密密钥并通过仅使用环境变量从本地触发构建,则凭证在本地工作。
我正在使用travis encrypt
,此处指示:https://docs.travis-ci.com/user/browserstack/但我不确定我是否正确使用它并且很难找到有关该命令的文档。
如果我的browserstack密钥是foo
,那么命令应该是:
travis encrypt foo
travis encrypt BROWSERSTACK_ACCESS_KEY=foo
travis encrypt BROWSERSTACK_ACCESS_KEY="foo"
还是其他什么?我正在使用命令的输出并将其放在.travis.yml
的末尾,如此:
addons:
browserstack:
username: "myusername"
access_key:
secure: "encryptedkey"
但我一直在我的Travis构建中获得Browserstack access_key is invalid.
。
答案 0 :(得分:1)
由于Travis使用bash来评估这个(iirc),你应该使用单引号,因为bash不会在单引号内扩展特殊字符。并且您可能还可以将整个事物用双引号括起来以获得良好的衡量标准,因此这应该有效:
travis encrypt "BROWSERSTACK_ACCESS_KEY='foo'"
另外,如果我理解你正确使用这个秘密,你应该做这样的事情而不是配置插件:
secure: "$BROWSERSTACK_ACCESS_KEY"