在阅读Ansible Module Development时,我没有看到任何关于argument_spec
规范的引用。我认为我会调查代码库,看看是否会记录arguments_spec,但是GitHub ansible/ansible basic.py文件在参数说明方面没有太多内容。里面应该有什么?我能找到的最接近的地方是一个较旧的文档在Ansible 2.3 Dev Guide
module = AnsibleModule(
argument_spec = dict(
state = dict(default='present', choices=['present', 'absent']),
name = dict(required=True),
enabled = dict(required=True, type='bool'),
something = dict(aliases=['whatever'])
)
)
我假设完整的arguments_spec规范是正确的
module = AnsibleModule(
argument_spec = {
default = 'default_value',
type = 'str',
required = True,
aliases = ['dv', 'value'],
choices = ['default_value', 'strings', 'test']
}
)
答案 0 :(得分:2)
文档https://docs.ansible.com/ansible/latest/dev_guide/developing_program_flow_modules.html#argument-spec中对参数规范有或多或少的完整描述。
在撰写本文时,可用字段包括:type
,elements
,default
,fallback
,choices
,required
,{{ 1}},no_log
,aliases
,options
,apply_defaults
。