我只是想看看是否可以针对始终开启的服务器运行厨房测试。
我知道针对您可以随意创建和销毁的 VM 测试说明书是理想的,但我希望有一些精简的方法可以仅使用 WinRM 或 SSH 对一个机器进行收敛和运行测试。
我只是想看看是否可以针对始终开启的服务器运行厨房测试。
我知道针对您可以随意创建和销毁的 VM 测试说明书是理想的,但我希望有一些精简的方法可以仅使用 WinRM 或 SSH 对一个机器进行收敛和运行测试。
我假设您想使用 Serverspec 或 InSpec 运行测试。它取决于验证者,driver
部分provisioner
是.kitchen.yml
可选的。如果您跳过它们test-kitchen
将使用dummy
驱动程序。所以没有驱动程序kitchen list
看起来像:
$ kitchen list
Instance Driver Provisioner Verifier Transport Last Action
...
ci-server-ubuntu-1604 Dummy ChefSolo Serverspec Ssh <Not Created>
如果验证程序支持 ssh 或 winrm,您可以运行kitchen verify
. Serverspec 验证器可以,Inspec 验证器也可以。
但是,如果您只想在机器上运行测试,我不确定是否需要整个测试厨房。InSpec和Serverspec都可以独立运行。
你提到,“不使用任何驱动程序?” 根据厨房文档:
该文件使用 Vagrant 作为驱动,不需要额外配置,因为它是 Kitchen 使用的默认驱动
似乎没有办法避免使用驱动程序。但是,只要您不运行任何创建或销毁命令,您就可能会不断地重新收敛和测试。
我认为重要的是要记住两件事,如果你继续:
您正在按照它们的预期方式使用这些工具,因此与典型用户的工作流程相比,未来的更改更有可能破坏您的工作流程。
您并没有真正测试 Chef 在新版本上的表现;您只是在测试您是否可以从未知的当前状态进入所需的状态。如果您不经常测试它,您很可能无法从头开始构建服务器。
如果您只想聚合和运行测试,请考虑以独立方式运行现有测试工具。