在铁轨中使用密钥时,失败的Travis CI会进行测试

时间:2016-07-22 13:05:04

标签: ruby-on-rails ruby travis-ci

我在我的rails应用程序中使用secrets.yml中的环境变量用于生产环境。我发送带有api密钥和密码的http post请求。我可以使用密码在测试环境中传递本地测试。但我的密码无法公开,那么如何在github上传递travis ci测试?

1 个答案:

答案 0 :(得分:1)

您可以加密secrets.yml并将加密文件推送到存储库。

travis encrypt-file secrets.yml

将为您secrets.yml.enc添加到存储库。切记不要推secrets.yml

您需要在before_script

中解密该文件
before_script: openssl aes-256-cbc -K $encrypted_0a6446eb3ae3_key -iv $encrypted_0a6446eb3ae3_key -in secrets.yml.enc -out secrets.yml -d

您可以使用--add选项直接将以上命令添加到travis.yml:

travis encrypt-file secrets.yml --add

请参阅此文档以获取更多详细信息 - Encrypting Files in Travis