[英]AWS CLI: The config profile (test) could not be found
我正在从 Jenkins 自动创建 AWS IAM 用户。 我们有多个具有程序访问权限的帐户。 我正在尝试从 CLI 为一个帐户创建用户帐户。 它在 CLI 中运行良好,但在 jenkins Pipeline 中运行良好。
通过 CLI 输出
aws iam create-user --user-name --profile test tets
{
"User": {
"Path": "/",
"UserName": "tets",
"UserId": "AIDAXTRPYNIV6HK7XE43R",
"Arn": "arn:aws:iam::523012434475:user/tets",
"CreateDate": "2019-09-18T06:49:41Z"
}
node
{
stage ('creating IAM user'){
sh 'aws iam create-user --user-name --profile test $Username'
}
找不到配置文件(测试)是我从 Jenkins Pipeline 得到的错误。
AWS CLI 在 jenkins 服务器上配置。 从 ssh 我能够执行所有命令。
我也刚遇到这个问题。 为了节省其他人的时间(前提是他们有相同的设置),花了一个小时来解开 FWIW:
我们在 AWS 中的 ec2 实例上使用 jenkins(使用“ubuntu”作为用户构建)。 jenkins 的实际主目录安装在 /data/jenkins
ssh 连接到服务器,因为 ubuntu 用户将您作为 ubuntu 置于 shell 中。 cd ~ # 带你到主目录(你已经在) pwd # 显示在 /home/ubuntu sudo su -jenkins # 改为 jenkins 用户 cd ~ # 实际上仍然带你到 /home/ubuntu pwd # 证明你'仍在 /home/ubuntu
在此位置使用配置和凭据创建 .aws 文件夹意味着您无法将 --profile 开关与管道中的 aws cli 命令一起使用。 jenkins 主目录实际上是 /data/jenkins,所以当管道运行时,对 aws cli 的调用将在 /data/jenkins 中查找 .aws 文件夹
将 .aws 文件夹从 /home/ubuntu 复制到 /data/jenkins,为 jenkins:jenkins chowning 对象并确保读取权限(我使用 chmod 660)意味着当 cli 运行时,它应该看到 /data/jenkins 中的配置和烦人的“找不到配置文件”
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.