我正在尝试将一些文件从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:没有这样的文件或目录
答案 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