Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Validation 可能做一个;“干运行”;文件验证?_Validation_Kubernetes - Fatal编程技术网

Validation 可能做一个;“干运行”;文件验证?

Validation 可能做一个;“干运行”;文件验证?,validation,kubernetes,Validation,Kubernetes,在Kubernetes(服务、ReplicationController等)中创建对象之前,我想测试对象的JSON或YAML规范是否有效。但我不想实际创建对象 是否有一些方法可以执行“干运行”,这相当于运行kubectl create--validate=true-f file.json,但只是让我知道它通过了验证,而不是实际创建它 理想情况下,如果我可以通过API实现这一点,而不需要使用kubectl,那就太好了。但如果它需要我使用kubectl,我可以让它工作 谢谢。一些kubectl命令支

在Kubernetes(服务、ReplicationController等)中创建对象之前,我想测试对象的JSON或YAML规范是否有效。但我不想实际创建对象

是否有一些方法可以执行“干运行”,这相当于运行
kubectl create--validate=true-f file.json,但只是让我知道它通过了验证,而不是实际创建它

理想情况下,如果我可以通过API实现这一点,而不需要使用kubectl,那就太好了。但如果它需要我使用kubectl,我可以让它工作


谢谢。

一些kubectl命令支持
--dry run
标志(如、和)

在更多命令中添加
--dry run
标志是一个开放的选项。

这对我很有用(kubernetes 1.7和1.9):

使用
--dry run
--validate
似乎只能部分解决问题

客户端验证并非详尽无遗。它主要确保 yaml文件中的字段名称和类型有效。完全验证是必要的 始终由服务器完成,并且始终可以施加额外的 客户端验证的限制/约束

来源-


鉴于此,除了将其完全移交给服务器进行审查外,您无法执行完整的验证集。

有一个名为的工具,它根据预期的架构验证配置,并且不需要连接到群集即可运行,使其成为CI等应用程序的良好选择。

当您没有服务器连接时,这是否起作用,我怀疑它不是客户端,这在CI情况下对验证没有帮助。我添加了一个解决方案:
--dry run=BOOLEAN
已被弃用。不过,这是可行的<代码>--dry run=client
似乎仍然是WIP-&
kubectl apply --validate=true --dry-run=true --filename=task.yaml