问题标签 [chef-custom-resource]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
770 浏览

ruby - Chef 自定义资源:可变属性或替代方法

我读到2016OpsCode 建议反对LWRP和替代HWRP。他们宁愿推荐使用custom resources.

虽然这是有道理的,但在利用 ruby​​ 方面还有很多不足之处(除非我误解了?)

我希望能够根据一些布尔属性修改数组。然后我可以使用该数组传递给模板,如下所示:

然后在我的模板中:

问题是属性是immutable. 所以我得到了错误:

这样做的正确方法是什么?在资源中编写 ruby​​ 代码以使其更加模块化和使用的正确方法是什么methods/functions

0 投票
1 回答
302 浏览

chef-infra - 如何在为什么运行模式下捕获 Chef::Util::FileEdit.new 操作

我想要一个自定义资源来编辑像“crontab”资源这样的文件。

下面是我的自定义资源,它完成了这项工作,但在“为什么运行”模式下,它不显示它将添加或删除什么字符串。

0 投票
1 回答
97 浏览

chef-infra - 如何在不将其作为参数传递的情况下从 Chef 自定义资源中确定 Java 版本?

我正在创建一个自定义资源,并希望使其尽可能独立。我需要确定节点上可用的Java 版本,以便我能够根据 Java 版本正确设置 JAVA_OPTS 变量。我宁愿在不让资源的客户端将此信息作为参数传递的情况下找出这一点。你能建议我一些解决方案吗?

亲切的问候,
德努伊

0 投票
1 回答
75 浏览

chef-infra - 通过 application_git 食谱自定义 git 克隆的部署密钥和 ssh 包装器路径

我正在使用厨师来管理服务器。早些时候,我使用应用程序说明书来克隆存储库。但现在在更高版本的应用程序说明书中,此支持已移至新的说明书 application_git。我正在使用 1.1.0

问题 -

  1. 我想更改部署密钥的路径
  2. ssh_wrapper 的内容
  3. ssh_wrapper 的路径。

我所尝试的一切 - 当前代码 -

我无法找到是否需要使用 ssh_wrapper_path 或 ssh_wrapper 或 deploy_key_path 传递路径。一切都失败了。

目前,我能够获得密钥和包装器,但在错误的地方。

0 投票
2 回答
1209 浏览

chef-infra - 在厨师资源中使用库函数

我创建了一个具有以下目录结构的厨师食谱“lcd_web_source”。

在此处输入图像描述

我的helpers.rb的内容如下所示

资源文件“hello.rb”的内容如下

我的食谱 default.rb 看起来像

当这个配方运行时,第一条语句

运行良好,这意味着配方能够找到库函数。

但是第二条语句失败并出现以下错误

简而言之,资源无法定位库中定义的函数。帮助我了解为什么会发生这种情况。

0 投票
2 回答
388 浏览

chef-infra - 是否可以使用某些食谱中的自定义资源在您自己的食谱中创建自定义资源?

我有一本食谱,假设我的食谱的名称是check,我正在尝试通过将文件放在以下目录结构中来构建自定义资源:check/resources/myresource.rb. 在这个myresource.rb文件中,我需要使用另一个食谱中的自定义资源line。如何使用line食谱中的资源myresource.rb

0 投票
2 回答
41 浏览

ruby - 食谱:从节点传播列表以填充模板值

我在食谱的节点文件中有一个验证列表

基于此列表,我想向模板添加值,下面是相同的源代码,但它似乎不是运行 case 和 if 语句,而是将模板中的所有逻辑作为简单文本添加。

任何帮助确定我做错了什么都会很有帮助