Jenkins中部署和晋升条款之间的差异

fwzugrvs  于 2023-03-17  发布在  Jenkins
关注(0)|答案(2)|浏览(155)

当涉及Jenkins中构建工件的过程时,即当将代码从GitHub合并到Jenkins管道以构建、上传到Artifactory、在开发环境中启动服务时,以及当Jenkins将工件从Artifactory移动到其他环境(例如测试环境)时,部署提升术语是否可互换?

部署晋升这两个术语之间有什么区别?晋升只是部署的结果吗?在Jenkins中提到这两个过程时,正确的术语是什么?

jslywgbw

jslywgbw1#

根据我的经验,在Jenkins中,部署指的是使用Jenkins或相关工具和插件将工件部署到登台、测试或生产环境的过程,这涉及到将工件部署到应用服务器。
另一方面,提升涉及将对象从测试环境移动或复制到非生产环境或生产环境,以避免从头开始。构建后,对象通常存储在名为candidates的指定文件夹或存储库中,对象将在其中接受测试。成功通过测试阶段后,对象将被移动或提升到名为releases的不同文件夹或存储库中。其中每一个都具有其自己的生命周期策略。
在我之前工作的一家公司,我们在三个不同的区域之间发布或提升工件。例如,当构建docker图像时,我们为每个开发提交将图像发布到docker-inprogress存储库。该存储库中的工件仅用于与开发相关的测试,并且不会提升到任何其他区域。对于夜间构建,我们将图像发布到docker-candidates存储库,并且一旦发布,它们被部署到我们的应用集群中。根据测试结果,它们被自动提升到docker-releases存储库中。无论是否提升,in-progress存储库中的工件将在那里保留12小时,而candidates存储库中的工件将保留30天。releases存储库中的工件将无限期保留。
因此,据我所知,部署和晋升这两个术语是不可互换的。

bgibtngc

bgibtngc2#

这可能取决于应用程序以及将其投入生产所遵循的流程。通常,部署是将构建或发布对象移动到特定环境(如开发、登台或生产环境)的流程。部署通常涉及传输文件、配置设置以及启动应用程序或服务等任务。
另一方面,升级是将构建或发布工件从一个环境移动到另一个环境的过程,通常是从较低的环境移动到较高的环境,例如从开发环境转移到登台环境。升级通常涉及额外的测试和验证,以确保工件在新环境中按预期工作,并进行了任何必要的配置更改。在高-以下是工艺流程。

尽管如此,Promotion也可能涉及到一个完整的部署过程,其中需要构建和部署工件,但这实际上取决于您在组织中遵循的过程。

相关问题