Ansible模块开发arguments_spec规范

时间:2019-01-24 15:27:24

标签: ansible

在阅读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']
    }
)

1 个答案:

答案 0 :(得分:2)

文档https://docs.ansible.com/ansible/latest/dev_guide/developing_program_flow_modules.html#argument-spec中对参数规范有或多或少的完整描述。

在撰写本文时,可用字段包括:typeelementsdefaultfallbackchoicesrequired,{{ 1}},no_logaliasesoptionsapply_defaults