问题标签 [test-kitchen]

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 回答
553 浏览

ruby - 如何在厨房服务器规范测试中要求食谱库

在一本食谱上,我定义了一个类 Rds::Checks,它共享为 bash/execute 资源和 Guards 构建 unix 命令的方法。文件库/checks.rb 的示例是:

在 LWPR 提供程序、食谱和 chefspec 测试中,文件加载没有问题,但是当我通过它在 serverspec 中使用它时kitchen verify会引发错误。

我真的很想保留在公共层上构建 bash/sh 命令的方法,以便我可以单独对其进行测试,而不必在单元和集成测试中为它们烦恼

0 投票
2 回答
1624 浏览

unit-testing - Vagrant ssh 连接超时的厨师测试厨房配置

我的 google-fu 让我失望了。我需要在我的 .kitchen.yml 中添加什么才能让它增加 config.vm.boot_timeout 或我的 Vagrantfile 中的尝试次数。我的厨房收敛几乎总是命中:

大约再过一分钟左右,我可以毫无问题地连接。

我已经尝试了许多我认为可能的方法,但似乎没有人将其设置为以下所有内容:

我需要做什么才能增加这个?

0 投票
1 回答
331 浏览

ruby - 测试厨房 - 如何将本地用户登录作为厨师属性传递?

我们的开发环境包括运行对云中更大的共享资源的查询的本地虚拟机。

它的设置方式是本地用户的登录将作为属性传递给 Chef 角色,该属性用于定义 SSH 和 DB 连接。

我们目前在 Vagrantfile 中使用 Ruby 提取登录名,并使用 vm.provision 在来宾 VM 的文件系统上创建 /tmp 文件。我们本地 VM 的 Chef 角色读取该文件的内容并将值传递给属性。

流浪文件:

在 Chef 运行期间,/tmp/remote_user 的内容由以下内容读取:

有没有更好的方法将当前用户的登录作为属性添加到本地 Chef 运行?

如果没有,我如何在 .kitchen.yml 中复制旧 Vagrantfile 中的功能?

0 投票
4 回答
1356 浏览

ruby - 厨房/berkshelf 想要旧宝石?

我想测试对食谱的一些更改,所以我做了我以前做的事情,但结果远非正常:

这台机器正在运行 debian Jessie,自从我上次接触这本食谱以来,已经更新了很多包(我不知道其中是否有任何与 ruby​​ 相关的东西)。

如何让厨房再次工作?

0 投票
1 回答
420 浏览

chef-infra - 如何在测试厨房中编写特定于平台的测试?

根据运行的平台编写反应不同的测试的最佳方法是什么?

我的用例如下:

我想确保我的系统免受开放 ssl 中的心脏出血错误的影响。这意味着验证厨师安装的 openssl 软件包是否是最新的。对于 CentOS,最后一个易受攻击的版本是 1.0.1e-15,而对于 Ubuntu,它是 1.0.1-4ubuntu5.11

0 投票
1 回答
1236 浏览

chef-infra - `search`没有在dev上按角色查找节点

我正在开发一个节点集群。在myrepo/cookbooks/mycookbook/.kitchen.yml我有

myrepo/cookbooks/mycookbook/recipes/default.rb我有

但是,在我的开发环境中,搜索返回一个空列表。我是否需要超过上述.kitchen.yml设置才能访问我的网络中具有该角色的节点的 IP 地址genericnode

附加信息:

这是角色:

0 投票
3 回答
3503 浏览

chef-infra - 如何在 .kitchen.yml 文件中为 chef_solo 供应商指定食谱路径?

我想在 Test Kitchen 中使用 chef_solo 作为配置器来指定食谱路径。我们目前没有使用 Berkshelf 或 chef_zero。

我在 .kitchen.yml 文件中设置了 cookbooks_path,但似乎 chef_solo 供应商忽略了该标志。请参阅下面的堆栈跟踪。

.kitchen.yml

堆栈跟踪:

相关: 如何在 .kitchen.yml 文件中指定食谱路径?

我看到了sethvargo对使用 chef_zero 进行配置的答案,但是我们在 Chef Zero 上被阻止了,因为我们的大量环境和角色是在 Ruby 中配置的,而不是 JSON。 https://github.com/opscode/chef-zero/issues/107。同样,Berkshelf 比我们在代码迁移 atm 中的位置提前一两次迭代。

有没有办法使用 chef_solo 配置器指定本地食谱路径?

0 投票
2 回答
119 浏览

chef-infra - 为测试厨房添加复杂属性

我有以下厨师属性,我正在尝试将其转换为 YAML 用于测试厨房:

这在 YAML 中会是什么样子,所以 test-kitchen 会正确覆盖它?对于特定的测试厨房驱动程序,我想将 false 值覆盖为 true。

有一个类似的 SO 问题:Adding Attributes to Test Kitchen但我尝试转换的属性更复杂(即值不是简单的字符串)。

0 投票
2 回答
892 浏览

vagrant - 如何在多节点环境中使用测试厨房?

test-kitchen不支持多虚拟机任务,我尝试在 Vagrantfile 中定义几个节点,但速度太慢 - 一次启动 5 个虚拟虚拟机虚拟机。也许我需要使用 docker,但整个配置变得过于复杂,尤其是比较通常的测试厨房设置。用 4-5 个独立的 linux 节点测试厨师食谱的最简单方法是什么?例如:2 个 rails 应用程序、postgresql、solr、nginx。

0 投票
1 回答
2194 浏览

windows - Chef Kitchen + Vagrant Window7 盒子因 SSH 而失败

日志信息:

我的厨房.yml:

$ vagrant box list

我生成的 Vagrantfile 来自kitchen converge

我能够成功地在 centos/rhel/ubuntu 盒子上运行一个厨房。这似乎完全是一个 Windows 问题(像往常一样)。

看来我在 kitchen.yml 中的指令没有被翻译成 Vagrantfile。

以下运行kitchen converge表明 VM 正在运行但无法连接: