【发布时间】:2019-06-22 22:38:38
【问题描述】:
想知道是否有人知道可以验证类似于 this 的 cloud-init 配置的验证器。我们尝试了它,它给出了一堆不适用的错误,例如,它无法识别 package_update 这是一个标准关键字,例如可以在官方文档中找到 here。所以我们正在寻找一个可以工作并能识别官方documentation中的关键字的验证器。
【问题讨论】:
标签: cloud-init
想知道是否有人知道可以验证类似于 this 的 cloud-init 配置的验证器。我们尝试了它,它给出了一堆不适用的错误,例如,它无法识别 package_update 这是一个标准关键字,例如可以在官方文档中找到 here。所以我们正在寻找一个可以工作并能识别官方documentation中的关键字的验证器。
【问题讨论】:
标签: cloud-init
我最近也遇到了这个,并找到了一个不错的方法。
在 Ubuntu 中,您可以使用以下方法来验证文件解析是否正确。
cloud-init devel schema --config-file bob.txt
如果文件有效或无效,这将给您以下通知
:~$ sudo cloud-init devel schema --config-file bob.txt
Valid cloud-config file bob.txt
$ nano bob.txt #edited the yaml to make it invalid
:~$ sudo cloud-init devel schema --config-file bob.txt
Cloud config schema errors: format-l2.c1: File bob.txt is not valid yaml. while parsing a block mapping
in "<byte string>", line 2, column 1:
package_upgrade: true
^
expected <block end>, but found '-'
in "<byte string>", line 6, column 1:
- 'curl -fsSL https://get.docker ...
^
虽然您使用云初始化文件cloud-init status --wait 和cli 上的许多其他命令非常有用。
嗯,进一步检查它似乎没有发现许多类型的错误,但Cloud Init docs 将其列为正在进行的工作。
cloud-init 开发模式:#cloud-config 格式和模式验证器。它接受 cloud-config yaml 文件并在本地注释潜在的架构错误,而无需部署。架构验证正在进行中,并支持部分云配置模块。
【讨论】: