Jenkins:使用Seed Jobs和Jenkinsfile自动配置作业

时间:2017-06-12 20:16:29

标签: jenkins chef jenkins-pipeline pipeline seed

我正在尝试了解如何最好地部署Jenkins实例,使用Chef完成插件,用户和作业。我目前正在使用Chef Jenkins Supermarket cookbook

我正在尝试实现管道的自动部署,作为项目的一部分。根据我收集的内容,最好的方法是让Chef在Jenkins初始设置和配置中配置种子作业。

种子作业应该指定git存储库,从中可以找到并使用Jenkins文件作为给定作业。我发现this resource by Daniel Spilker有助于解释种子工作。

因此将运行种子Jenkins作业,然后生成我们刚刚使用它编写的Jenkins作业(在这种情况下,种子作业将从源代码控制中提取Jenkins文件并配置新的Jenkins作业(我们的管道) ),以及Jenkinsfile的详细信息。)

我是否正确理解这是正确的方法,不仅可以自动化Jenkins作业配置,还可以作为在作业配置发生变化时始终为任何给定作业配置最新作业的正确方法? / p>

如果我们使用种子作业来设置我们的管道,一旦Jenkins由Chef完全配置,有什么可能的解决方案让初始种子作业自动运行?

对于可能随时间发生的作业配置更改,我们是否需要设置种子作业以在Jenkinsfile被修改的情况下定期轮询Jenkinsfile中的任何更改的源代码控制? (注意我们当前正在使用BitBucket进行源代码管理可能会有所帮助。)

刚开始使用管道作为代码。感谢大家提前耐心和指导。

1 个答案:

答案 0 :(得分:1)

我在其他问题中已经提到了这一点,但最不痛苦的方法是将Jenkins视为数据库,而不是Web服务。让Chef做基本安装,然后手动配置初始位。对于DR,请依靠备份而不是Chef。