ansible.builtin.validate_argument_spec 模块 – 验证角色参数规范。
注意
此模块是 ansible-core
的一部分,并包含在所有 Ansible 安装中。在大多数情况下,即使不指定 collections 关键字,您也可以使用短模块名称 validate_argument_spec
。但是,我们建议您使用 完全限定集合名称 (FQCN) ansible.builtin.validate_argument_spec
,以便轻松链接到模块文档并避免与其他可能具有相同模块名称的集合冲突。
ansible-core 2.11 中的新增功能
概要
此模块使用定义的参数规范验证角色参数。
注意
此模块具有相应的 操作插件。
参数
参数 |
注释 |
---|---|
类似于 AnsibleModule argument_spec 的字典。 有关 规范格式,请参阅 |
|
根据 argument_spec 验证的参数字典。 |
属性
属性 |
支持 |
描述 |
---|---|---|
支持:完全 |
表示此模块具有相应的操作插件,因此可以在控制器上执行部分选项 |
|
支持:无 |
支持与 |
|
支持:无 |
可以与 become 关键字一起使用 |
|
支持:无 |
强制执行不按主机执行的“全局”任务,这会绕过每个主机的模板化、串行、限制和其他循环注意事项 条件语句的工作方式如同正在使用 此操作在锁定步骤策略之外通常不起作用 |
|
支持:完全 |
可以在 check_mode 中运行,并返回更改状态预测,而无需修改目标;如果不支持,则将跳过该操作。 |
|
支持:无 |
使用目标配置的连接信息在其上执行代码 |
|
支持:无 |
可以与 delegate_to 和相关关键字结合使用 |
|
支持:无 |
在 diff 模式下,将返回有关已更改(或在 check_mode 中可能需要更改)的详细信息 |
|
平台: 全部 |
可以针对的目标操作系统/系列 |
注释
注意
如果角色包含 参数规范,则无需显式调用此模块。
示例
- name: verify vars needed for this task file are present when included
ansible.builtin.validate_argument_spec:
argument_spec: '{{ required_data }}'
vars:
required_data:
# unlike spec file, just put the options in directly
stuff:
description: stuff
type: str
choices: ['who', 'knows', 'what']
default: what
but:
description: i guess we need one
type: str
required: true
- name: verify vars needed for this task file are present when included, with spec from a spec file
ansible.builtin.validate_argument_spec:
argument_spec: "{{ (lookup('ansible.builtin.file', 'myargspec.yml') | from_yaml )['specname']['options'] }}"
- name: verify vars needed for next include and not from inside it, also with params i'll only define there
block:
- ansible.builtin.validate_argument_spec:
argument_spec: "{{ lookup('ansible.builtin.file', 'nakedoptions.yml') }}"
provided_arguments:
but: "that i can define on the include itself, like in it's `vars:` keyword"
- name: the include itself
vars:
stuff: knows
but: nobuts!
返回值
常见的返回值记录在此处,以下是此模块独有的字段
键 |
描述 |
---|---|
参数验证错误的列表。 返回: 失败 示例: |
|
来自 ‘argument_spec’ 参数的数据字典。 返回: 失败 示例: |
|
有关 validate_args_spec 使用位置的信息字典 返回: 始终 示例: |