cisco.dnac.template_intent 模块 – 模板功能的资源模块

注意

此模块是 cisco.dnac 集合(版本 6.25.0)的一部分。

如果您正在使用 ansible 包,您可能已经安装了此集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install cisco.dnac。您需要进一步的要求才能使用此模块,请参阅 要求 以了解详细信息。

要在 playbook 中使用它,请指定:cisco.dnac.template_intent

cisco.dnac 6.6.0 中的新增功能

概要

  • 管理资源配置模板的创建、更新和删除操作。

  • 通过项目名称和模板名称创建模板的 API。

  • 通过模板名称和项目名称更新模板的 API。

  • 通过模板名称和项目名称删除模板的 API。

  • 导出给定 projectNames 的项目的 API。

  • 导出给定 templateIds 的模板的 API。

  • 管理资源配置模板导入项目的创建操作的 API。

  • 管理资源配置模板导入模板的创建操作的 API。

要求

执行此模块的主机需要以下要求。

  • dnacentersdk == 2.4.5

  • python >= 3.9

参数

参数

注释

config

list / elements=dictionary / required

正在管理的模板的详细信息列表。

configuration_templates

dictionary

创建/更新/删除模板。

author

string

模板的作者。

composite

boolean

是否为组合模板。

选择

  • false

  • true

containing_templates

list / elements=dictionary

配置模板创建的 containingTemplates。

composite

boolean

是否为组合模板。

选择

  • false

  • true

description

string

模板的描述。

device_types

list / elements=dictionary

应用模板的设备类型。

product_family

string

设备系列。

product_series

string

设备系列。

product_type

string

设备类型。

id

string

模板的 UUID。

language

string

模板语言

选择

  • "JINJA"

  • "VELOCITY"

name

string

模板的名称。

project_description

string

创建的项目的描述。

project_name

string

管理模板的项目名称。

rollback_template_params

list / elements=dictionary

模板回滚所需的参数。

binding

string

绑定到源。

custom_order

integer

模板参数的 CustomOrder。

data_type

string

模板参数的数据类型。

default_value

string

模板参数的默认值。

description

string

模板参数的描述。

display_name

string

参数的显示名称。

group

string

组。

id

string

模板参数的 UUID。

instruction_text

string

参数的说明文本。

key

string

键。

not_param

boolean

它是否不是变量。

选择

  • false

  • true

order

integer

模板参数的顺序。

param_array

boolean

它是否是一个数组。

选择

  • false

  • true

parameter_name

string

模板参数的名称。

provider

string

提供程序。

range

list / elements=dictionary

配置模板创建的范围。

id

string

范围的 UUID。

max_value

integer

范围的最大值。

min_value

integer

范围的最小值。

required

boolean

参数是否为必需。

选择

  • false

  • true

selection

dictionary

配置模板创建的选择。

default_selected_values

list / elements=string

默认选择值。

id

string

选择的 UUID。

selection_type

string

选择的类型(SINGLE_SELECT 或 MULTI_SELECT)。

selection_values

dictionary

选择值。

tags

list / elements=dictionary

配置模板创建的标签。

id

string

标签的 UUID。

name

string

标签的名称。

template_content

string

模板内容。

template_params

list / elements=dictionary

配置模板创建的 templateParams。

binding

string

绑定到源。

custom_order

integer

模板参数的 CustomOrder。

data_type

string

模板参数的数据类型。

default_value

string

模板参数的默认值。

description

string

模板参数的描述。

display_name

string

参数的显示名称。

group

string

组。

id

string

模板参数的 UUID。

instruction_text

string

参数的说明文本。

key

string

键。

not_param

boolean

它是否不是变量。

选择

  • false

  • true

order

integer

模板参数的顺序。

param_array

boolean

它是否是一个数组。

选择

  • false

  • true

parameter_name

string

模板参数的名称。

provider

string

提供程序。

range

list / elements=dictionary

配置模板创建的范围。

id

string

范围的 UUID。

max_value

integer

范围的最大值。

min_value

integer

范围的最小值。

required

boolean

参数是否为必需。

选择

  • false

  • true

selection

dictionary

配置模板创建的选择。

default_selected_values

list / elements=string

默认选择值。

id

string

选择的 UUID。

selection_type

string

选择的类型(SINGLE_SELECT 或 MULTI_SELECT)。

selection_values

dictionary

选择值。

version

string

模板的当前版本。

create_time

integer

模板的创建时间。

custom_params_order

boolean

自定义参数顺序。

选择

  • false

  • true

device_types

list / elements=dictionary

配置模板创建的 deviceTypes。此字段是创建新模板所必需的。

product_family

string

设备系列。

product_series

string

设备系列。

product_type

string

设备类型。

failure_policy

string

如果模板配置失败,则定义失败策略。

id

string

模板的 UUID。

language

string

模板语言

选择

  • "JINJA"

  • "VELOCITY"

last_update_time

integer

模板的更新时间。

latest_version_time

integer

最新版本模板时间。

parent_template_id

string

父模板 ID。

project_description

string

项目描述。

project_id

string

项目 UUID。

project_name

string

项目名称。

rollback_template_content

string

回滚模板内容。

rollback_template_params

list / elements=dictionary

配置模板创建的 rollbackTemplateParams。

binding

string

绑定到源。

custom_order

integer

模板参数的 CustomOrder。

data_type

string

模板参数的数据类型。

default_value

string

模板参数的默认值。

description

string

模板参数的描述。

display_name

string

参数的显示名称。

group

string

组。

id

string

模板参数的 UUID。

instruction_text

string

参数的说明文本。

key

string

键。

not_param

boolean

它是否不是变量。

选择

  • false

  • true

order

integer

模板参数的顺序。

param_array

boolean

它是否是一个数组。

选择

  • false

  • true

parameter_name

string

模板参数的名称。

provider

string

提供程序。

range

list / elements=dictionary

配置模板创建的范围。

id

string

范围的 UUID。

max_value

integer

范围的最大值。

min_value

integer

范围的最小值。

required

boolean

参数是否为必需。

选择

  • false

  • true

selection

dictionary

配置模板创建的选择。

default_selected_values

list / elements=string

默认选择值。

id

string

选择的 UUID。

selection_type

string

选择的类型(SINGLE_SELECT 或 MULTI_SELECT)。

selection_values

dictionary

选择值。

software_type

string

适用的设备软件类型。此字段是创建新模板所必需的。

software_variant

string

适用的设备软件变体。

software_version

string

适用的设备软件版本。

template_content

string

模板内容。

template_description

string

模板的描述。

template_name

string

模板的名称。此字段是创建新模板所必需的。

template_params

list / elements=dictionary

配置模板创建的 templateParams。

binding

string

绑定到源。

custom_order

integer

模板参数的 CustomOrder。

data_type

string

模板参数的数据类型。

default_value

string

模板参数的默认值。

description

string

模板参数的描述。

display_name

string

参数的显示名称。

group

string

组。

id

string

模板参数的 UUID。

instruction_text

string

参数的说明文本。

key

string

键。

not_param

boolean

它是否不是变量。

选择

  • false

  • true

order

integer

模板参数的顺序。

param_array

boolean

它是否是一个数组。

选择

  • false

  • true

parameter_name

string

模板参数的名称。

provider

string

提供程序。

range

list / elements=dictionary

配置模板创建的范围。

id

string

范围的 UUID。

max_value

integer

范围的最大值。

min_value

integer

范围的最小值。

required

boolean

参数是否为必需。

选择

  • false

  • true

selection

dictionary

配置模板创建的选择。

default_selected_values

list / elements=string

默认选择值。

id

string

选择的 UUID。

selection_type

string

选择的类型(SINGLE_SELECT 或 MULTI_SELECT)。

selection_values

dictionary

选择值。

template_tag

list / elements=dictionary

配置模板创建的标签。

id

string

标签的 UUID。

name

string

标签的名称。

validation_errors

dictionary

配置模板创建的 validationErrors。

rollback_template_errors

list / elements=dictionary

回滚模板的验证或设计冲突错误。

template_errors

list / elements=dictionary

验证或设计冲突错误。

template_id

string

模板的 UUID。

template_version

string

模板的当前版本。

version

string

模板的当前版本。

version_description

string

模板版本注释。

export

dictionary

导出项目/模板详细信息。

project

list / elements=string

导出项目。

template

list / elements=dictionary

导出模板。

project_name

string

模板可用的项目名称。

template_name

string

我们需要导出的模板名称

import

dictionary

导入项目/模板详细信息。

project

dictionary

导入项目详细信息。

do_version

boolean

DoVersion 查询参数。如果此标志为 true,则使用导入的内容创建模板的新版本(如果模板已存在)。 “如果为 false,且模板已存在,则操作将失败并显示 ‘模板已存在’ 错误。

选择

  • false

  • true

template

dictionary

导入模板详细信息。

do_version

boolean

DoVersion 查询参数。如果此标志为 true,则使用导入的内容创建模板的新版本(如果模板已存在)。 “如果为 false,且模板已存在,则操作将失败并显示 ‘模板已存在’ 错误。

选择

  • false

  • true

payload

list / elements=dictionary

配置模板导入模板的 payload。

author

string

模板的作者。

composite

boolean

是否为组合模板。

选择

  • false

  • true

containing_templates

list / elements=dictionary

配置模板导入模板的 containingTemplates。

composite

boolean

是否为组合模板。

选择

  • false

  • true

description

string

模板的描述。

device_types

list / elements=dictionary

配置模板导入模板的 deviceTypes。

product_family

string

设备系列。

product_series

string

设备系列。

product_type

string

设备类型。

id

string

模板的 UUID。

language

string

模板语言(JINJA 或 VELOCITY)。

name

string

模板的名称。

project_name

string

项目名称。

rollback_template_params

list / elements=dictionary

配置模板导入模板的 rollbackTemplateParams。

binding

string

绑定到源。

custom_order

integer

模板参数的 CustomOrder。

data_type

string

模板参数的数据类型。

default_value

string

模板参数的默认值。

description

string

模板参数的描述。

display_name

string

参数的显示名称。

group

string

组。

id

string

模板参数的 UUID。

instruction_text

string

参数的说明文本。

key

string

键。

not_param

boolean

它是否不是变量。

选择

  • false

  • true

order

integer

模板参数的顺序。

param_array

boolean

它是否是一个数组。

选择

  • false

  • true

parameter_name

string

模板参数的名称。

provider

string

提供程序。

range

list / elements=dictionary

配置模板导入模板的范围。

id

string

范围的 UUID。

max_value

integer

范围的最大值。

min_value

integer

范围的最小值。

required

boolean

参数是否为必需。

选择

  • false

  • true

selection

dictionary

配置模板导入模板的选择。

default_selected_values

list / elements=string

默认选择值。

id

string

选择的 UUID。

selection_type

string

选择的类型(SINGLE_SELECT 或 MULTI_SELECT)。

selection_values

dictionary

选择值。

tags

list / elements=dictionary

配置模板导入模板的标签。

id

string

标签的 UUID。

name

string

标签的名称。

template_content

string

模板内容。

template_params

list / elements=dictionary

配置模板导入模板的templateParams。

binding

string

绑定到源。

custom_order

integer

模板参数的 CustomOrder。

data_type

string

模板参数的数据类型。

default_value

string

模板参数的默认值。

description

string

模板参数的描述。

display_name

string

参数的显示名称。

group

string

组。

id

string

模板参数的 UUID。

instruction_text

string

参数的说明文本。

key

string

键。

not_param

boolean

它是否不是变量。

选择

  • false

  • true

order

integer

模板参数的顺序。

param_array

boolean

它是否是一个数组。

选择

  • false

  • true

parameter_name

string

模板参数的名称。

provider

string

提供程序。

range

list / elements=dictionary

配置模板导入模板的范围。

id

string

范围的 UUID。

max_value

integer

范围的最大值。

min_value

integer

范围的最小值。

required

boolean

参数是否为必需。

选择

  • false

  • true

selection

dictionary

配置模板导入模板的选择。

default_selected_values

list / elements=string

默认选择值。

id

string

选择的 UUID。

selection_type

string

选择的类型(SINGLE_SELECT 或 MULTI_SELECT)。

selection_values

dictionary

选择值。

version

string

模板的当前版本。

create_time

integer

模板的创建时间。

custom_params_order

boolean

自定义参数顺序。

选择

  • false

  • true

description

string

模板的描述。

device_types

list / elements=dictionary

配置模板导入模板的 deviceTypes。

product_family

string

设备系列。

product_series

string

设备系列。

product_type

string

设备类型。

failure_policy

string

如果模板配置失败,则定义失败策略。

id

string

模板的 UUID。

language

string

模板语言(JINJA 或 VELOCITY)。

last_update_time

integer

模板的更新时间。

latest_version_time

integer

最新版本模板时间。

name

string

模板的名称。

parent_template_id

string

父模板 ID。

project_id

string

项目 UUID。

project_name

string

项目名称。

rollback_template_content

string

回滚模板内容。

rollback_template_params

list / elements=dictionary

配置模板导入模板的 rollbackTemplateParams。

binding

string

绑定到源。

custom_order

integer

模板参数的 CustomOrder。

data_type

string

模板参数的数据类型。

default_value

string

模板参数的默认值。

description

string

模板参数的描述。

display_name

string

参数的显示名称。

group

string

组。

id

string

模板参数的 UUID。

instruction_text

string

参数的说明文本。

key

string

键。

not_param

boolean

它是否不是变量。

选择

  • false

  • true

order

integer

模板参数的顺序。

param_array

boolean

它是否是一个数组。

选择

  • false

  • true

parameter_name

string

模板参数的名称。

provider

string

提供程序。

range

list / elements=dictionary

配置模板导入模板的范围。

id

string

范围的 UUID。

max_value

integer

范围的最大值。

min_value

integer

范围的最小值。

required

boolean

参数是否为必需。

选择

  • false

  • true

selection

dictionary

配置模板导入模板的选择。

default_selected_values

list / elements=string

默认选择值。

id

string

选择的 UUID。

selection_type

string

选择的类型(SINGLE_SELECT 或 MULTI_SELECT)。

selection_values

dictionary

选择值。

software_type

string

适用的设备软件类型。

software_variant

string

适用的设备软件变体。

software_version

string

适用的设备软件版本。

tags

list / elements=dictionary

配置模板导入模板的标签。

id

string

标签的 UUID。

name

string

标签的名称。

template_content

string

模板内容。

template_params

list / elements=dictionary

配置模板导入模板的templateParams。

binding

string

绑定到源。

custom_order

integer

模板参数的 CustomOrder。

data_type

string

模板参数的数据类型。

default_value

string

模板参数的默认值。

description

string

模板参数的描述。

display_name

string

参数的显示名称。

group

string

组。

id

string

模板参数的 UUID。

instruction_text

string

参数的说明文本。

key

string

键。

not_param

boolean

它是否不是变量。

选择

  • false

  • true

order

integer

模板参数的顺序。

param_array

boolean

它是否是一个数组。

选择

  • false

  • true

parameter_name

string

模板参数的名称。

provider

string

提供程序。

range

list / elements=dictionary

配置模板导入模板的范围。

id

string

范围的 UUID。

max_value

integer

范围的最大值。

min_value

integer

范围的最小值。

required

boolean

参数是否为必需。

选择

  • false

  • true

selection

dictionary

配置模板导入模板的选择。

default_selected_values

list / elements=string

默认选择值。

id

string

选择的 UUID。

selection_type

string

选择的类型(SINGLE_SELECT 或 MULTI_SELECT)。

selection_values

dictionary

选择值。

validation_errors

dictionary

配置模板导入模板的validationErrors。

rollback_template_errors

dictionary

回滚模板的验证或设计冲突错误。

template_errors

dictionary

验证或设计冲突错误。

template_id

string

模板的 UUID。

template_version

string

模板的当前版本。

version

string

模板的当前版本。

project_name

string

ProjectName路径参数。在项目下创建模板的项目名称。

config_verify

boolean

设置为 True 以在应用 playbook 配置后验证 Cisco DNA Center。

选择

  • false ← (默认)

  • true

dnac_api_task_timeout

integer

定义检索任务详细信息的 API 调用的超时时间(秒)。如果在此期间未收到任务详细信息,该过程将结束,并记录超时通知。

默认值: 1200

dnac_debug

boolean

Cisco DNA Center SDK 的调试标志。

选择

  • false ← (默认)

  • true

dnac_host

string / 必需

Cisco DNA Center 的主机名。

dnac_log

boolean

启用/禁用 playbook 执行日志记录的标志。

当为 true 且提供了 dnac_log_file_path 时,- 在执行位置使用指定的名称创建日志文件。

当为 true 且未提供 dnac_log_file_path 时,- 在执行位置使用名称 'dnac.log' 创建日志文件。

当为 false 时,- 禁用日志记录。

如果日志文件不存在,- 则会根据“dnac_log_append”标志以追加或写入模式创建该文件。

如果日志文件存在,- 则会根据“dnac_log_append”标志覆盖或追加该文件。

选择

  • false ← (默认)

  • true

dnac_log_append

boolean

确定文件的模式。设置为 True 表示“追加”模式。设置为 False 表示“写入”模式。

选择

  • false

  • true ← (默认)

dnac_log_file_path

string

管理日志记录。如果 dnac_log 为 True,则会记录日志。

如果未指定路径,- 当 “dnac_log_append” 为 True 时,会在当前 Ansible 目录中生成 ‘dnac.log’;日志会追加写入。 - 当 ‘dnac_log_append’ 为 False 时,会生成 ‘dnac.log’;日志会被覆盖。

如果指定了路径,- 当 ‘dnac_log_append’ 为 True 时,文件以追加模式打开。- 当 ‘dnac_log_append’ 为 False 时,文件以写入 (w) 模式打开。- 在共享文件场景中,如果没有追加模式,则会在每次模块执行后覆盖内容。- 对于共享日志文件,将第一个模块的 append 设置为 False(覆盖);对于后续模块,将 append 设置为 True。

默认值: "dnac.log"

dnac_log_level

string

设置日志级别的阈值。将记录级别等于或高于此级别的消息。级别按严重性顺序排列 [CRITICAL, ERROR, WARNING, INFO, DEBUG]。

CRITICAL 表示导致程序停止的严重错误。仅显示 CRITICAL 消息。

ERROR 表示阻止功能的错误。显示 ERROR 和 CRITICAL 消息。

WARNING 表示潜在的未来问题。显示 WARNING、ERROR 和 CRITICAL 消息。

INFO 跟踪正常操作。显示 INFO、WARNING、ERROR 和 CRITICAL 消息。

DEBUG 提供详细的诊断信息。显示所有日志消息。

默认值: "WARNING"

dnac_password

string

用于身份验证的 Cisco DNA Center 密码。

dnac_port

string

Cisco DNA Center 的端口。

默认值: "443"

dnac_task_poll_interval

integer

指定连续调用 API 以检索任务详细信息之间的间隔(秒)。

默认值: 2

dnac_username

别名: user

string

用于身份验证的 Cisco DNA Center 用户名。

默认值: "admin"

dnac_verify

boolean

用于启用或禁用 SSL 证书验证的标志。

选择

  • false

  • true ← (默认)

dnac_version

string

通知 SDK 要使用的 Cisco DNA Center 版本。

默认值: "2.2.3.3"

state

string

模块完成后 DNAC 的状态。

选择

  • "merged" ← (默认)

  • "deleted"

validate_response_schema

boolean

Cisco DNA Center SDK 的标志,用于启用针对 JSON 模式的请求正文验证。

选择

  • false

  • true ← (默认)

注释

注意

  • 使用的 SDK 方法为 configuration_templates.ConfigurationTemplates.create_template, configuration_templates.ConfigurationTemplates.deletes_the_template, configuration_templates.ConfigurationTemplates.update_template, configuration_templates.ConfigurationTemplates.export_projects, configuration_templates.ConfigurationTemplates.export_templates, configuration_templates.ConfigurationTemplates.imports_the_projects_provided, configuration_templates.ConfigurationTemplates.imports_the_templates_provided,

  • 使用的路径为 post /dna/intent/api/v1/template-programmer/project/{projectId}/template, delete /dna/intent/api/v1/template-programmer/template/{templateId}, put /dna/intent/api/v1/template-programmer/template, post /dna/intent/api/v1/template-programmer/project/name/exportprojects, post /dna/intent/api/v1/template-programmer/template/exporttemplates, post /dna/intent/api/v1/template-programmer/project/importprojects, post /dna/intent/api/v1/template-programmer/project/name/{projectName}/template/importtemplates,

  • 不支持 check_mode

  • 该插件在控制节点上运行,不使用任何 ansible 连接插件,而是使用 Cisco DNAC SDK 中的嵌入式连接管理器

  • 以 dnac_ 开头的参数由 Cisco DNAC Python SDK 用于建立连接

示例

- name: Create a new template, export and import the project and template.
  cisco.dnac.template_intent:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    dnac_log: True
    dnac_log_level: "{{dnac_log_level}}"
    state: merged
    config_verify: True
    config:
    - configuration_templates:
        author: string
        composite: true
        create_time: 0
        custom_params_order: true
        description: string
        device_types:
        - product_family: string
          product_series: string
          product_type: string
        failure_policy: string
        id: string
        language: string
        last_update_time: 0
        latest_version_time: 0
        name: string
        parent_template_id: string
        project_id: string
        project_name: string
        project_description: string
        rollback_template_content: string
        software_type: string
        software_variant: string
        software_version: string
        tags:
        - id: string
          name: string
        template_content: string
        validation_errors:
            rollback_template_errors:
            - {}
            template_errors:
            - {}
            template_id: string
            template_version: string
        version: string
      export:
        project:
          - string
        template:
          - project_name : string
            template_name: string
      import:
        project:
          do_version: true
        export:
          do_version: true
          payload:
          - author: string
            composite: true
            containing_templates:
            - composite: true
              description: string
              device_types:
              - product_family: string
                product_series: string
                product_type: string
              id: string
              language: string
              name: string
              project_name: string
              rollback_template_params:
              - binding: string
                custom_order: 0
                data_type: string
                default_value: string
                description: string
                display_name: string
                group: string
                id: string
                instruction_text: string
                key: string
                not_param: true
                order: 0
                param_array: true
                parameter_name: string
                provider: string
                range:
                - id: string
            project_name: string

返回值

通用返回值记录在此处,以下是此模块独有的字段

描述

response_1

dictionary

包含 DNAC Python SDK 返回的模板版本详细信息的字典

返回值: 始终

示例: "{\n  \"response\": {\n                    \"endTime\": 0,\n                    \"version\": 0,\n                    \"data\": String,\n                    \"startTime\": 0,\n                    \"username\": String,\n                    \"progress\": String,\n                    \"serviceType\": String, \"rootId\": String,\n                    \"isError\": bool,\n                    \"instanceTenantId\": String,\n                    \"id\": String\n                    \"version\": 0\n              },\n  \"msg\": String\n}\n"

response_2

list / elements=string

包含 Cisco DNAC Python SDK 返回的响应的列表

返回值: 始终

示例: ["{\n  \"response\": []", "\n  \"msg\": String\n}\n"]

response_3

dictionary

包含 Cisco DNAC Python SDK 返回的现有模板详细信息的字典

返回值: 始终

示例: "{\n  \"response\": {},\n  \"msg\": String\n}\n"

response_4

dictionary

列表中模板的详细信息,由 Cisco DNAC Python SDK 返回

返回值: 始终

示例: "{\n  \"response\": {},\n  \"msg\": String\n}\n"

response_5

dictionary

列表中项目的详细信息,由 Cisco DNAC Python SDK 返回

返回值: 始终

示例: "{\n  \"response\": {},\n  \"msg\": String\n}\n"

作者

  • Madhan Sankaranarayanan (@madhansansel) Rishita Chowdhary (@rishitachowdhary) Akash Bhaskaran (@akabhask) Muthu Rakesh (@MUTHU-RAKESH-27)