AWS CLI:找不到配置文件(测试)

时间:2019-09-18 06:55:17

标签: amazon-web-services jenkins

我正在自动从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'       
}
  

找不到配置文件(测试)   是我从詹金斯管道获得的错误。

AWS CLI在jenkins服务器上配置。通过ssh,我可以执行所有命令。

1 个答案:

答案 0 :(得分:1)

我也遇到了这个问题。花了一个小时取消选择,但为了节省其他人的时间(希望他们有相同的设置),FWIW:

我们在AWS(以“ ubuntu”为用户构建)的ec2实例上使用jenkins。 jenkins的实际主目录位于/ data / jenkins

以ubuntu用户身份登录服务器,将您以ubuntu身份放入shell。 cd〜#带您到主目录(您已经在) pwd#在/ home / ubuntu中显示您 sudo su -jenkins#更改为jenkins用户 cd〜#实际上 still 会将您带到/ home / ubuntu pwd#证明您仍在/ home / ubuntu

在此位置使用配置和凭据创建.aws文件夹意味着您无法在管道中将--profile开关与aws cli命令一起使用。 jenkins主目录实际上是/ data / jenkins,因此,当管道运行时,对aws cli的调用将在/ data / jenkins中寻找.aws文件夹

将.aws文件夹从/ home / ubuntu复制到/ data / jenkins,为jenkins:jenkins锁定对象并确保已读取读权限(我使用chmod 660),这意味着在cli运行时,它应该在/ data中看到配置/ jenkins和令人讨厌的“找不到配置文件”