如果您安装了Jenkins Git插件,那么利用Jenkins并针对Heroku的连续交付管道的设置就非常简单。 通过此管道,对特定Git分支的更改将导致Heroku部署。
为了使此部署过程正常运行,您应该至少使用两个Git分支,因为您希望有一个针对自动部署的分支,而另一个没有针对(因为它表示活动的开发)。 例如,遵循git-flow约定,这两个分支可以命名为development
和master
,其中对master
更改被部署到Heroku而对development
更改则未被部署。 因此,您将至少有两个Jenkins作业监视每个分支。
自然地,该管道过程与语言无关-Node , Ruby , Java-在构建过程中做什么都不重要,因为整个过程都是通过Git进行编排的。
当从Jenkins进行Heroku自动部署时, 不要理会Heroku的API,因为使用Jenkins的Git发布者功能将分支从您的存储库推送到Heroku(无论如何都使用Git)要容易得多。
在较高的层次上,您需要定义一个Jenkins作业来监视您的master
Git分支。 如果有更改,此作业将运行您的构建需要执行的任何操作,并且作为构建后的步骤,您可以将该分支发布到Heroku。 就这么简单。
要配置此管道,您将需要Git插件 。 安装了Git插件后,创建一个作业,然后在“源代码管理”部分中,添加您的源Git存储库,然后添加另一个存储库,即Heroku远程存储库。
确保为Heroku存储库命名为heroku
。 通过单击“凭据”部分下的“高级”按钮可以完成此操作。
其次,在“构建后操作”部分中,将配置一个Git Publisher。
在这种情况下,您要发布到的Git存储库将是先前定义的Heroku。 点击“添加分支”按钮,并确保将master
分支指示为要推送的分支,并且“目标”远程名称应是您在“源代码管理”部分(即heroku
)中为远程Heroku存储库指定的名称。
根据完成工作的方式设置构建触发器,构建完成后,Jenkins会将生成的快照推送到Heroku存储库中, 从而进行部署 ! 现在不是那么容易吗,伙计?
翻译自: https://www.javacodegeeks.com/2014/01/continuous-delivery-for-heroku-with-jenkins.html