0

我之前使用 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 中的现有构建提供程序配置?

4

1 回答 1

1

Jenkins 操作实际上定义为您帐户中的自定义操作。如果您想更新操作配置,您可以使用创建自定义操作类型 API定义新版本。您的更改将是操作类型的新“版本”,因此您随后更新管道中的 actionTypeId 以指向您的新版本。

完成后,您还可以删除旧版本以防止它出现在操作列表中。

关于 Jenkins URL 更改,一种解决方案是设置指向您的 Jenkins 实例的 DNS 记录(例如,通过 Route53)并在您的操作配置中使用 DNS 主机名。这样您就可以在将来重新映射 DNS 记录,而无需更新您的管道。

于 2017-08-28T17:54:35.840 回答