2017-08-26 6 views
0

私は以前、CodePipelineコンソールを使用してJenkinsビルドプロバイダを作成しました。作成中、JenkinsサーバーのURLを要求します。以前に作成したAWS CodePipelineビルドプロバイダを更新するにはどうすればよいですか?

ここでJenkinsサーバーのURLを変更する必要がありますが、編集しようとするとビルドプロバイダを変更するオプションはありません。以下のスナップショットを参照してください:

enter image description here

を私が見る唯一の解決策は、新しいものを追加することです。

私は

aws codepipeline get-pipeline --name <pipeline-name> 

、AWS-CLIを使用してパイプラインを取得しようとしました。しかし、JSONレスポンスがちょうどビルドプロバイダーへの参照を持っています

 ... 
     }, 
     { 
      "name": "Build", 
      "actions": [ 
       { 
        "inputArtifacts": [ 
         { 
          "name": "APIServer" 
         } 
        ], 
        "name": "Build", 
        "actionTypeId": { 
         "category": "Build", 
         "owner": "Custom", 
         "version": "1", 
         "provider": "jenkins-api-server" 
        }, 
        "outputArtifacts": [ 
         { 
          "name": "APIServerTarball" 
         } 
        ], 
        "configuration": { 
         "ProjectName": "api-server-build" 
        }, 
        "runOrder": 1 
       } 
      ] 
     }, 
     { 

私はいずれかを見つけることができませんでしたビルドプロバイダを管理するための他のコマンド。では、AWS CodePipelineの既存のビルドプロバイダ設定をどこでどのように更新すればよいですか?

答えて

1

実際には、Jenkinsのアクションはアカウントにcustom actionと定義されています。アクション構成を更新する場合は、create custom action type APIを使用して新しいバージョンを定義できます。あなたの変更はアクションタイプの新しい "バージョン"になるので、新しいバージョンを指すようにパイプラインのactionTypeIdを更新します。

完了したら、delete the old versionでもアクションリストに表示されないようにすることができます。

Jenkins URLの変更に関しては、Jenkinsインスタンスを指すDNSレコード(例:Route53経由)をセットアップし、アクション構成でDNSホスト名を使用する方法があります。そうすれば、将来パイプラインを更新することなくDNSレコードを再マップすることができます。

+0

Thanks Tim。私は、 "aws codepipeline delete-custom-action-type"を使ってcliからカスタムアクションを削除し、後で "aws codepipeline create-custom-action-type"を使ってカスタムアクションを作成しました。 URLの変更では、httpからhttpsに変更する必要がありました。 DNSはオプションではありませんでした。あなたの応答のために多くをありがとう。 –

関連する問題