Amazon-Web-Services
由於“無法找到憑證”錯誤,無法在 Jenkins 中使用 AWS CLI
我正在使用 Jenkins 進行 CI。我需要能夠從 S3 儲存桶中提取文件。在 jenkins 工作中,我從 jenkins shell 進行以下診斷:
cd ~
這將我帶到 /var/lib/jenkins
whoami
這將返回使用者 jenkins
在 /var/lib/jenkins 我有我的 .aws 文件夾,其中包含配置和憑據文件,但是當我執行時
aws configure list
我明白了:
Name Value Type Location ---- ----- ---- -------- profile <not set> None None access_key <not set> None None secret_key <not set> None None region <not set> None None
即使我有 .aws 文件夾和這兩個文件中的正確資訊,那裡什麼也沒有。我最初嘗試將 .aws 文件夾放在 /home/jenkins 中,但這也不起作用。
那麼,如何讓 jenkins 真正使用 aws cli?
您可以將憑據導出為環境變數:
$ export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE $ export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY $ export AWS_DEFAULT_REGION=us-west-2
有關更多資訊,請參閱http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html。根據您使用 Jenkins 的方式,您可能需要使用EvnInject 外掛
請在 jenkins 伺服器的 bash 中更新您的 aws 憑據。執行以下命令:
# sudo -su jenkins # aws configure
參考連結:http ://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-ami-jenkins.html