gpt4 book ai didi

travis-ci - 如何加密你的 Travis key

转载 作者:行者123 更新时间:2023-12-03 16:15:14 24 4
gpt4 key购买 nike

特拉维斯 docs说加密 key 的最简单方法,例如。要上传到 S3,就是使用他们的命令行工具。

是否有其他方法可以做到这一点而不涉及安装 Ruby 等,只是为了使用他们的命令行工具?

最佳答案

正好有一个 Javascript 方法,它可用 here与相应的 github 存储库 here .

使用加密的 S3 key 有点令人困惑,因为 Travis 文档中没有很好地解释这些原则。

在上面提到的表单的左上角字段中,您输入您的 Travis-CI 用户 ID/repo-name,这样脚本就可以为您的存储库下拉由 Travis 创建的公钥。

在右上角的字段中,您输入:

AWS_ACCESS_KEY_ID:...the..access..string..from..Amazon.IAM...

点击 加密 并复制下面生成的字符串 加密数据

然后在右上方的字段中,输入:
AWS_SECRET_ACCESS_KEY:...the.very.secret.string.from.Amazon.IAM...

并再次复制加密的字符串。请注意,由于加密字符串中包含随机数据,因此加密字符串每次都会发生变化。

这些加密的 key 对由 Travis 解密并作为环境变量导出。您可以像这样在 .travis.yml 文件中输入它们:
global:
# travis encrypt AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID
- secure: "--first-very--long-encrypted-string--="
# travis encrypt AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY
- secure: "--second--very-long-encrypted-string--="
- AWS_S3_BUCKET_NAME: yourbucketname

现在在部署部分,您使用用于加密对的名称来引用它们
deploy:
provider: s3
# these are set up in the global env
access_key_id: $AWS_ACCESS_KEY_ID
secret_access_key: $AWS_SECRET_ACCESS_KEY
bucket: $AWS_S3_BUCKET_NAME
skip_cleanup: true
upload-dir: travis-builds

如果您在加密时在 global env 中使用了名称 ACCESS_ID,那么在部署中您会将其称为 $ACCESS_ID

上传目录在命名存储桶中创建。

当您的构建在 Travis 中运行时,解密的 key 不会公开。相反,您看到的是:
See https://docs.travis-ci.com/user/workers/container-based-infrastructure/ for details.
Setting environment variables from .travis.yml
$ export AWS_ACCESS_KEY_ID=[secure]
$ export AWS_SECRET_ACCESS_KEY=[secure]
$ export AWS_S3_BUCKET_NAME=yourbucketname

关于travis-ci - 如何加密你的 Travis key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42525861/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com