- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在使用 Jenkins supermarket cookbook在我的 Chef 托管节点上部署作为服务运行的 Jenkins 实例。到目前为止,我已经修改了我的 _master_war_ 配方文件以安装 Jenkins 并使用 runit 将 Jenkins 作为服务启动,安装我需要的所有插件版本以及启用基于矩阵的安全性并创建一个基本管理员帐户。还应注意,我们使用 BitBucket 进行源代码控制。
我还想将我的作业添加为自动化 Jenkins 部署的一部分。据我了解,执行此操作的方法是将作业配置文件从我的 Chef 工作站上的目录复制到托管节点上的目录(Chef 的缓存路径)。
根据 Jenkins public supermarket cookbook自述文件:
The :create action requires a Jenkins job config.xml. This config file must exist on the target node and contain a valid Jenkins job configuration file. Because the Jenkins CLI actually reads and generates its own copy of this file, do NOT write this configuration inside of the Jenkins job. We recommend putting them in Chef's file cache path.
由于这些作业配置会定期更改,我想知道在我的 Chef 工作站上维护作业配置文件的最新副本以部署到我的托管节点的最佳方法是什么?
我是否正确理解了说明书文档,因为我们需要作业配置文件的本地副本(在 Chef 工作站上),然后将其复制到托管节点上的 Chef 缓存文件路径?
提前感谢任何人能够提供的任何帮助。
最佳答案
就个人而言,我认为将 Jenkins 作业设置到 Jenkins 领域而不是 Chef 领域要多得多。 Jenkins 社区开发了几种“工作即代码”方法,最受欢迎的是 Job DSL和 Jenkins Pipelines ,后者可能是更好的起点。
Chef cookbook 剩下的就是定义种子作业,例如对于“Bitbucket Organization Folder”插件(以及指向您在 BitBucket 的组织的一项工作)或工作 DSL 的所谓“种子工作”。
关于管道的自动化设置,我建议看一下 Torben Knerr's examples .这使用
Jenkinsfile
中所定义)关于 Chef 中的实际实现,您可以在 a cookbook of mine 中查看示例. template
资源从 cookbook(在 templates/
子目录中)复制一个文件到某个临时路径,jenkins_job
资源从那里获取它(在 Jenkins 服务器上)。
所以我不确定您是否正确理解:
will need a local copy of the job configuration file (on the Chef workstation)
所以您只需要在您的工作站上将它添加到 Recipe 中,是的。
关于jenkins - Chef : Jenkins supermarket cookbook automated job deployment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44500881/
我正在尝试为服务器提供依赖于旧版本 mysql cookbook (5.6.3) 的 Chef 项目。由于这个特定版本与 Ubuntu 14.04 之后的任何更新版本都不兼容,我尝试更新到最新版本 (
我正在为厨师学习曲线而苦苦挣扎。这两个命令有什么区别,为什么有两个? knife cookbook :knife cookbook 子命令用于与位于 Chef 服务器或本地 Chef-repo 上的
我正在接受以下 Chef 服务器培训: 学习 Chef>教程>管理节点>Red Hat Enterprise Linux>Hosted Chef>将说明书上传到 Chef 服务器 教程刚刚让我使用“k
我打算使用 https://github.com/opscode-cookbooks/mysql但是当我运行 vagrant provision 时 找不到菜谱 mysql 的 recipe ruby
我正在写一本 Recipe ,在同一台主机上安装多个 tomcat 实例。我为多个实例创建了一个散列,这个散列将包含 shutdown_port 和 startup_port 的键值对。例如 - in
我已经搞了两天了,还是没明白。基本上,我从头开始使用 JQuery Cookbook 模式。我的问题是表单 html 页面加载正常,但代码无法识别我的提交按钮。这是代码的相关部分: 单独的 HTML:
本文实例讲述了Python在字符串的开头或结尾处进行文本匹配操作。分享给大家供大家参考,具体如下: 问题:在字符串的开头或结尾处按照指定的文本模式做检查,例如检查文件的扩展名、URL协议类型等;
本文实例讲述了Python将多个映射合并为单个映射的方法。分享给大家供大家参考,具体如下: 问题:在逻辑上将多个字典或映射合并为一个单独的映射结构,以此执行某些特定的操作,比如查找值或者检查键是否
本文实例讲述了Python针对任意多的分隔符拆分字符串操作。分享给大家供大家参考,具体如下: 问题:将分隔符(以及分隔符之间的空格)不一致的字符串拆分为不同的字段; 解决方案:使用更为灵活的re
本文实例讲述了Python从字典中提取子集的方法。分享给大家供大家参考,具体如下: 问题:想创建一个字典,其本身是另一个字典的子集 解决方案:利用字典推导式(dictionary compreh
本文实例讲述了Python将名称映射到序列元素中的方法。分享给大家供大家参考,具体如下: 问题:希望通过名称来访问元素,减少结构中对位置的依赖性 解决方案:使用命名元组collections.n
本文实例讲述了Python同时对数据做转换和换算处理操作。分享给大家供大家参考,具体如下: 问题:我们需要调用一个换算函数(例如sum()、min()、max()),但是首先需对数据做转换或者筛选
本文实例讲述了Python找出序列中出现次数最多的元素。分享给大家供大家参考,具体如下: 问题:找出一个元素序列中出现次数最多的元素是什么 解决方案:collections模块中的Counter
本文实例讲述了Python通过公共键对字典列表排序算法。分享给大家供大家参考,具体如下: 问题:想根据一个或多个字典中的值来对列表排序 解决方案:利用operator模块中的itemgetter
本文实例讲述了Python实现对不原生支持比较操作的对象排序算法。分享给大家供大家参考,具体如下: 问题:想在同一个类的实例之间做排序,但是它们并不原生支持比较操作。 解决方案:使用内建的sor
本文实例讲述了Python根据字段将记录分组操作。分享给大家供大家参考,具体如下: 问题:想根据字典或者对象实例的某个特定的字典(比如日期)来分组迭代数据 解决方案:itertools.grou
本文实例讲述了Python筛选及提取序列中元素的方法。分享给大家供大家参考,具体如下: 问题:提取出序列中的值或者根据某些标准对序列做删减 解决方案:列表推导式、生成器表达式、使用内建的filt
本文实例讲述了Python从序列中移除重复项且保持元素间顺序不变的方法。分享给大家供大家参考,具体如下: 问题:从序列中移除重复的元素,但仍然保持剩下的元素顺序不变 解决方案: 1、如果序列中
本文实例讲述了Python对切片命名清除索引的方法。分享给大家供大家参考,具体如下: 问题:如何清理掉到处都是硬编码的切片索引 解决方案:对切片命名 假设有一些代码用来从字符串的固定位置中取出
我已经在这本 Recipe 上苦苦挣扎了一段时间了。 我正在尝试将包括 Azure SDK 在内的许多资源安装到 Windows Server 2012 R2 实例上。 最初我在堆栈跟踪中收到以下错误
我是一名优秀的程序员,十分优秀!