Jenkins PipelineにAWSクレデンシャルをどのように付与しますか?


10

私のジェンキンスパイプラインに次の設定があります

s3Upload( file:'ok.txt', bucket:'my-buckeck', path:'file.txt')

問題は、s3Upload関数がjenkinsに保存したAWSアクセスキーを取得しないことです

私は次のコードで結ばれました

    withAWS(profile:'Test Publisher') {
    s3Upload( file:'ok.txt', bucket:'my-buckeck', path:'file.txt')

}

s3プロファイル

ジェンキンスの私のS3プロファイルはそのようなものです。それでもプロファイルファイルを取得してもエラーが見つかりませんでした。s3Upload関数を使用してjenkinsからs3にファイルをアップロードするにはどうすればよいですか?

回答:


8

S3にアップロードできるようにするには、Jenkinsの環境変数に認証情報を保存する必要があります。

AWS_DEFAULT_REGION=<region of bucket>

AWS_ACCESS_KEY_ID=<aws id>

AWS_SECRET_ACCESS_KEY=<your s3 access key>

これを行うには、Jenkins-Jenkinsの管理-システムの構成-グローバルプロパティ-環境変数に移動します


4

S3 PublisherプラグインとAWSプラグインを混同している可能性があります。

このスクリーンショットは、S3 Publisherプラグインのhttps://wiki.jenkins.io/display/JENKINS/S3+Pluginからのものです。最新バージョンに更新しないように警告があります。パイプラインの互換性が壊れているようですが、「バージョン0.10.11(2016年12月31日)-更新しない-パイプラインスクリプトの下位互換性が壊れています」という警告が表示されます。

ただし、パイプラインコードはJenkins AWSプラグイン用であるようです。https://github.com/jenkinsci/pipeline-aws-plugin。そのプラグインで資格情報を使用するには、次のいずれかを実行する必要があります。

  1. アクセスキー、秘密鍵をJenkins資格情報ストアに保存します。
  2. JenkinsのAWS構成ファイルから読み取ります。

これらのオプションは、プラグインのREADME https://github.com/jenkinsci/pipeline-aws-pluginに記載されています

Use Jenkins UsernamePassword credentials information (Username: AccessKeyId, Password: SecretAccessKey):    
withAWS(credentials:'nameOfSystemCredentials') {
    // do something
}

Use profile information from ~/.aws/config:
withAWS(profile:'myProfile') {
    // do something
}

「プロファイル」は、AWS構成ファイルのプロファイルセクションです。http://docs.aws.amazon.com/cli/latest/userguide/cli-multiple-profiles.html

その後、S3アップロード機能を使用できます。https://github.com/jenkinsci/pipeline-aws-plugin#s3upload


withAWSステップを使用しており、名前accesskeyとIDのAWS認証情報がありますjenkins。私がそれをこの例外にぶつけ続けたとき、withAWS(credentials:'jenkins')または呼び続けたときwithAWS(credentials:'accesskey')。資格情報は私のJenkins mgmtコンソールごとに適切に見えます(最後に最近正常に使用されたことを示すログがあります)。何が欠けているのでしょうか?
蠍座

1
@scorpiodawgあなたの質問は、元の質問とは少し違って聞こえます。できるだけ多くの情報で新しい質問を始めてもらえますか?
マイク

私はここにこれを尋ねた:serverfault.com/questions/958350/... @マイク-marseglia
scorpiodawg
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.