您可以使用 Zappa 的设置自行定义要使用的配置文件:
"profile_name": "your-profile-name", // AWS profile credentials to use. Default 'default'. Removing this setting will use the AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables instead.
但是在您的 CI 中,您首先必须创建您的 AWS 配置文件,并使用您在 CI 的 Web 界面中设置的环境变量中的配置文件填充它。
在CircleCI 中(对 TravisCI 也是如此),我正在为我的个人资料这样做mislavcimpersak
:
mkdir -p ~/.aws
echo -e "[mislavcimpersak]" >> ~/.aws/credentials
echo -e "aws_access_key_id = "$AWS_ACCESS_KEY_ID >> ~/.aws/credentials
echo -e "aws_secret_access_key = "$AWS_SECRET_ACCESS_KEY >> ~/.aws/credentials
完整的工作CircleCI配置文件可在我的仓库中找到:
https://github.com/mislavcimpersak/xkcd-excuse-generator/blob/master/.circleci/config.yml#L58-L60
并且还完成了工作TravisCI配置文件:
https://github.com/mislavcimpersak/xkcd-excuse-generator/blob/feature/travis-ci/.travis.yml#L25-L29
此外,正如 Zappa 的文档中所说:
删除此设置将改为使用 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY 环境变量
因此,您可以"profile_name": "default"
从zappa_settings.jsonAWS_ACCESS_KEY_ID
中删除并在AWS_SECRET_ACCESS_KEY
CI 的 Web 界面中进行设置。Zappa 应该能够使用这些。