两周前,我参加了在日内瓦举行的首届瑞士JDuchess研讨会。 这是关于Deployit的 ,该软件可实现连续部署。 我已经在2012 Devoxx France上被介绍给我,这真是一个惊喜...一个非常好的。
不幸的是,这次研讨会是失败的,至少对我而言是这样:我无法导入提供的虚拟机。 鉴于其他与会人员的积极反馈,我决定稍后再在家中进行操作。 这次,它就像一种魅力。
顺便说一句, 恭喜 Xebialabs France技术总监Benoit Moussaud ,因为车间中的所有工作都完美无缺。 我参加过付费培训,但材料质量差得多。
Deployit基于以下核心概念:
- 可交付成果是要部署的版本化工件, 例如 WAR,EAR,Web资源的ZIP存档,SQL脚本等。
- 环境在运行容器的文物, 如 Servlet容器,应用服务器,web服务器,数据库,...
- 一对前者之间的绑定
- 字典解析占位符,以便可以在不同环境中部署相同的可交付成果
Deployit的工作原理没有任何魔术,它使用了现代开发环境的现有部分,尤其是CI服务器。 唯一的要求是拥有一个专门的Maven项目,该项目可以创建所谓的DAR存档,无非就是ZIP文件封装了部署必需的所有资源。 专用的Jenkins插件负责将产生的工件提供给Deployit控制台。
那时,只需要执行一项操作:在每个资源和一个容器(或多个容器)之间进行绑定。 例如,我将WAR映射到Tomcat,将SQL脚本映射到MySQL。 更好的是,如果在交付和环境上都设置了匹配的标签,则此步骤变为可选。 另外,也可能需要为此部署计划提供正确的词典(请参见上文)。
现在,Jenkins插件可以看到计划了,因此我们可以在构建过程中启动它! 实际上,这意味着我们实现了从编译到部署以及包括所有需要的测试的整个自动化构建流程。
当然,Deployit还提供了其他一些功能(例如,如何使用CLI启动计划),但是这些功能只是不错的功能,而不是核心功能。如果您想了解更多功能,建议您使用该产品页面 。
Deployit不是(不幸的)不是开源的我不知道任何Deployit竞争对手。 提示很受欢迎,因为我认为竞争是提高赌注的肯定方法...
翻译自: https://blog.frankel.ch/deployit-deployment-automation-made-easy/