如何编写AWS配置响应脚本?

时间:2016-06-15 21:18:53

标签: amazon-web-services amazon-s3 bitrise

我正在尝试将一些文件从Bitrise CI上传到AWS S3存储桶。

当我尝试在笔记本电脑上配置AWS时,我没有问题

$ aws configure
$ AWS Access Key ID [None]: MY_KEY
$ AWS Secret Access Key [None]: MY_ACCESS_KEY
$ Default region name [None]: MY_REGION_NAME
$ Default output format [None]:  

我的问题是如何将MY_KEY,MY_ACCESS_KEY,MY_REGION_NAME和EMPTY分配给上述请求(通过脚本)?

我试图欺骗!以这种方式,但我没有成功。

echo "[default]" > ~/.aws/config
echo "aws_access_key_id = MY_KEY" >> ~/.aws/config
echo "aws_secret_access_key = MY_ACCESS_KEY" >> ~/.aws/config
echo "region = MY_REGION_NAME" >> ~/.aws/config
cat ~/.aws/config

我收到了以下错误:

  

echo'[default]'/tmp/bitrise316130716/step_src/._script_cont:line 16:/root/.aws/config:没有这样的文件或目录

2 个答案:

答案 0 :(得分:1)

您不必将配置写入文件,您可以提供凭证作为环境变量:

export AWS_ACCESS_KEY_ID=..
export AWS_SECRET_ACCESS_KEY=..
export AWS_DEFAULT_REGION=..

您可以在我们的amazon-s3-upload step中查看我们的实施方式。

答案 1 :(得分:0)

感谢答案https://stackoverflow.com/a/3804645/513413

我将上面的代码更改为此,我可以将文件上传到S3。

yes Y | sudo apt-get install awscli
printf 'MY_KEY\nMY_ACCESS_KEY\nMY_REGION_NAME\njson' | aws configure