Deployment 詹金斯:处理许多构建配置
我工作的商店正在使用jenkins进行持续集成,并使用其升级的构建插件来部署构建工件。但是,随着配置数量的增加,我们在管理此设置时遇到了问题。所以我的问题是: 如何设置一个方便的CI系统,从中可以在各种配置中部署各种工件,而无需手动编写所有可能的组合脚本? 更多详情: 假设我有构建配置(即分支)Deployment 詹金斯:处理许多构建配置,deployment,jenkins,continuous-integration,Deployment,Jenkins,Continuous Integration,我工作的商店正在使用jenkins进行持续集成,并使用其升级的构建插件来部署构建工件。但是,随着配置数量的增加,我们在管理此设置时遇到了问题。所以我的问题是: 如何设置一个方便的CI系统,从中可以在各种配置中部署各种工件,而无需手动编写所有可能的组合脚本? 更多详情: 假设我有构建配置(即分支)A、B和C。有三个部署目标I、J和K(比如针对不同的客户或消费者)。最后,每个部署的实例都有各种服务X、Y和Z(例如网站、后台任务和数据服务)。各种服务通常一起推广;但有时,特别是为了发布修补程序,它们不
A
、B
和C
。有三个部署目标I
、J
和K
(比如针对不同的客户或消费者)。最后,每个部署的实例都有各种服务X
、Y
和Z
(例如网站、后台任务和数据服务)。各种服务通常一起推广;但有时,特别是为了发布修补程序,它们不是
目前,我们对每种组合都有促销活动。因此,要安装一个典型的构建,我需要在configC
上运行促销J/X
、J/Y
和J/Z
。不幸的是,服务的数量正在增加,在jenkins中获得所有这些配置而不出错,而且在部署时确保没有忘记或混淆任何组件变得越来越棘手。当然,有三个以上的构建配置和三个以上的目标,所以这一切都失控了
有些选项不太管用:
- 参数化升级以禁用各种组件。Jenkins允许参数化升级,但在您第一次升级时,这些值是固定的。我可以通过提升
并设置一些参数来消除一定程度的自由度,但是如果以后的版本出现故障,我不能只回滚出现故障的组件,我需要回滚整个部署J
- 依赖的、参数化的构建。Jenkins似乎不支持选择依赖哪个构建的参数,如果手动编写选项,“运行”选择参数当然无法工作
- 在生成被手动接受为准备部署后,应将其标记为准备部署,包括哪个目标的参数和哪个组件的参数
- 安装历史记录是按每个目标的每个组件记录的,而不是(仅)按每个生成记录的
如果这里的挑战是您有多个web服务和促销(尤其是生产),包括以协调的方式在特定版本上推送大量内容,那么您就达到了我们uDeploy的标准用例。它可以方便地与詹金斯集成。它还可以很好地跟踪到哪个部署目标的版本,以及谁运行了这个过程 施用的盐粒;但是谢谢!我一定会看看我们的策略。