我之前使用CodePipeline控制台创建了一个Jenkins构建提供程序。在创建过程中,它会要求提供Jenkins服务器URL。
现在,我需要更改我的Jenkins服务器URL,但是当我尝试编辑时,没有任何选项可以更改构建提供程序。见下面的快照:
我看到的唯一解决方案是添加一个新解决方案。
我尝试使用aws-cli获取管道,
aws codepipeline get-pipeline --name <pipeline-name>
但是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中现有的构建提供程序配置?
答案 0 :(得分:1)
Jenkins操作实际上定义为您帐户中的custom action。如果要更新操作配置,可以使用create custom action type API定义新版本。您的更改将是一个新的&#34;版本&#34;操作类型,然后更新管道中的actionTypeId以指向新版本。
完成后,您还可以delete the old version阻止它出现在操作列表中。
关于Jenkins URL更改,一个解决方案是设置指向Jenkins实例的DNS记录(例如,通过Route53)并在操作配置中使用DNS主机名。这样,您可以在不更新管道的情况下重新映射DNS记录。