【问题标题】:Chef Inspec test suites to verify Jenkins build node configurations用于验证 Jenkins 构建节点配置的 Chef Inspec 测试套件
【发布时间】:2017-12-14 05:42:12
【问题描述】:

我目前有一个使用 Jenkins 2.46.3 LTS 的构建场设置。我在物理服务器上安装了 Jenkins Master,在 VirtualBox 上运行 4 - 5 个虚拟机构建节点。

我正在考虑使用 Chef 管理虚拟机的配置,但是我需要在这些构建节点上安装的大部分软件都没有相应的 Chef Supermarket Cookbook。我对 Chef 没有足够的信心来创建我自己的食谱来管理这些节点。

我确实有一些编写 Inspec 测试的经验,以便测试我为一些 Chef Supermarket 食谱准备的一些包装食谱。我的问题是;即使我没有最初在节点上安装此软件的说明书,有没有办法针对实际节点运行一套检查测试(与使用它们在沙盒环境中测试说明书相反)?

我的目标是自动执行所有手动检查,以验证构建节点是否设置正确。 Ohai 似乎对此有好处,因为它区分了 Chef 的配置以及托管节点上的内容。

如果有更好的方法来实现这个目标,我很乐意将其视为一种解决方案。

感谢任何对此有任何经验的人!欢迎任何帮助或建议:)

【问题讨论】:

    标签: jenkins automated-tests chef-infra cookbook inspec


    【解决方案1】:

    我认为您可能会将InSpeckitchen-inspec 混淆。这两者是相关的,但独立的(好吧,kitchen-inspec 使用 InSpec 但你知道我的意思)。 Test Kitchen 验证程序针对测试实例(通常是虚拟机)运行某种测试代码,但 InSpec 本身针对您指向的任何(真实)服务器运行测试代码。

    【讨论】:

    • 你说得对,我是在交替使用这两者。那么在 kitchen-inspec 之外,是否可以使用 chef 对托管节点运行一套 Inspec 测试,或者这通常超出了 Chef 的能力范围吗?如果是这样,我应该研究什么技术堆栈?
    • @J0991 您可以使用 kitchen-inspec 并指定目标节点的主机名/IP 和要连接的端口,它仍然可以执行 InSpec 操作。 Kitchen 不需要您提供节点来运行测试,如果您不提供食谱,它将跳过 kitchen converge 并继续到 kitchen verify 如果您提供了要运行的测试并将您的验证程序块设置为 @987654327 @.
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-04-11
    • 1970-01-01
    • 1970-01-01
    • 2018-03-30
    • 1970-01-01
    • 2016-11-02
    • 1970-01-01
    相关资源
    最近更新 更多