cisco.dnac.template_workflow_manager module – Resource module for Template functions

Note

This module is part of the cisco.dnac collection (version 6.13.3).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install cisco.dnac. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: cisco.dnac.template_workflow_manager.

New in cisco.dnac 6.6.0

Synopsis

  • Manage operations create, update and delete of the resource Configuration Template.

  • API to create a template by project name and template name.

  • API to update a template by template name and project name.

  • API to delete a template by template name and project name.

  • API to export the projects for given projectNames.

  • API to export the templates for given templateIds.

  • API to manage operation create of the resource Configuration Template Import Project.

  • API to manage operation create of the resource Configuration Template Import Template.

Requirements

The below requirements are needed on the host that executes this module.

  • dnacentersdk == 2.4.5

  • python >= 3.9

Parameters

Parameter

Comments

config

list / elements=dictionary / required

List of details of templates being managed.

configuration_templates

dictionary

Perform operations such as Create/Update/Delete on a template.

author

string

Identifies the creator of the template.

composite

boolean

Specifies if the template is composite.

Choices:

  • false

  • true

containing_templates

list / elements=dictionary

Refer to a set of templates within the main template to define more complex or modular configurations.

This is particularly useful in systems that support hierarchical or nested templates.

Here parent templates may contain child templates to form a complete configuration.

composite

boolean

Specifies if the template is composite.

Choices:

  • false

  • true

description

string

Provides a description of the template.

device_types

list / elements=dictionary

List of dictionaries details the types of devices that the templates can be applied to.

product_family

string

Denotes the family to which the device belongs.

product_series

string

Specifies the series classification of the device.

product_type

string

Describes the exact type of the device.

id

string

Unique identifier for the template, represented as a UUID.

language

string

Programming language used for templating. Options are ‘JINJA’ for Jinja templating or ‘VELOCITY’ for Apache Velocity.

Choices:

  • "JINJA"

  • "VELOCITY"

name

string

Designation of the template, serving as its unique name.

project_description

string

Narrative that elaborates on the purpose and scope of the project.

project_name

string

Title of the project within which the template is categorized and managed.

rollback_template_params

list / elements=dictionary

A list of dictionaries defining parameters necessary for the rollback functionality of a template.

binding

string

Associates the parameter with its source.

custom_order

integer

Specifies a user-defined ordering for the parameter.

data_type

string

Identifies the data type of the parameter (e.g., string, integer, boolean).

default_value

string

Establishes a default value for the parameter, used if no other value is provided.

description

string

Provides a descriptive explanation of the parameter’s purpose.

display_name

string

The name of the parameter as displayed to users.

group

string

Categorizes the parameter into a named group for organizational purposes.

id

string

A unique identifier for the parameter, formatted as a UUID.

instruction_text

string

Gives guidance or instructions regarding the parameter’s use.

key

string

A unique key that identifies the parameter within the template.

not_param

boolean

Indicates whether the entry is not to be treated as a parameter.

Choices:

  • false

  • true

order

integer

Determines the sequence in which the parameter appears relative to others.

param_array

boolean

Specifies if the parameter should be treated as an array.

Choices:

  • false

  • true

parameter_name

string

The name of the parameter.

provider

string

Denotes the provider associated with the parameter.

range

list / elements=dictionary

Defines the permissible range for the parameter’s value.

id

string

Unique identifier for the range, represented as a UUID.

max_value

integer

Specifies the maximum allowable value for the parameter.

min_value

integer

Specifies the minimum allowable value for the parameter.

required

boolean

Dictates whether the parameter is mandatory for template operations.

Choices:

  • false

  • true

selection

dictionary

Contains options for parameter selection when a choice is available.

default_selected_values

list / elements=string

Lists the default values that are preselected.

id

string

A unique identifier for the selection entity, represented as a UUID.

selection_type

string

Specifies the type of selection, such as ‘SINGLE_SELECT’ or ‘MULTI_SELECT’.

selection_values

dictionary

A dictionary of available values for selection.

tags

list / elements=dictionary

A list of dictionaries representing tags associated with the Configuration Template during creation.

id

string

The unique identifier for each tag, presented as a UUID.

name

string

The descriptive label or name assigned to the tag.

template_content

string

The actual script or code constituting the body of the template.

template_params

list / elements=dictionary

The customization of the contents within the template.

binding

string

Associates the parameter with its source.

custom_order

integer

Specifies a user-defined ordering for the parameter.

data_type

string

Identifies the data type of the parameter (e.g., string, integer, boolean).

default_value

string

Establishes a default value for the parameter, used if no other value is provided.

description

string

Provides a descriptive explanation of the parameter’s purpose.

display_name

string

The name of the parameter as displayed to users.

group

string

Categorizes the parameter into a named group for organizational purposes.

id

string

A unique identifier for the parameter, formatted as a UUID.

instruction_text

string

Gives guidance or instructions regarding the parameter’s use.

key

string

A unique key that identifies the parameter within the template.

not_param

boolean

Indicates whether the entry is not to be treated as a parameter.

Choices:

  • false

  • true

order

integer

Determines the sequence in which the parameter appears relative to others.

param_array

boolean

Specifies if the parameter should be treated as an array.

Choices:

  • false

  • true

parameter_name

string

The name of the parameter.

provider

string

Denotes the provider associated with the parameter.

range

list / elements=dictionary

Defines the permissible range for the parameter’s value.

id

string

Unique identifier for the range, represented as a UUID.

max_value

integer

Specifies the maximum allowable value for the parameter.

min_value

integer

Specifies the minimum allowable value for the parameter.

required

boolean

Dictates whether the parameter is mandatory for template operations.

Choices:

  • false

  • true

selection

dictionary

Contains options for parameter selection when a choice is available.

default_selected_values

list / elements=string

Lists the default values that are preselected.

id

string

A unique identifier for the selection entity, represented as a UUID.

selection_type

string

Specifies the type of selection, such as ‘SINGLE_SELECT’ or ‘MULTI_SELECT’.

selection_values

dictionary

A dictionary of available values for selection.

version

string

The current version of template.

create_time

integer

The creation time of the template refers to the initial development.

custom_params_order

boolean

Specifies the sequence in which custom parameters or variables should be arranged within the template.

Choices:

  • false

  • true

device_types

list / elements=dictionary

List of dictionaries details the types of devices that the templates can be applied to.

product_family

string

Denotes the family to which the device belongs.

product_series

string

Specifies the series classification of the device.

product_type

string

Describes the exact type of the device.

failure_policy

string

Define failure policy if template provisioning fails.

id

string

A unique identifier, represented as a UUID.

language

string

Programming language used for templating. Options are ‘JINJA’ for Jinja templating or ‘VELOCITY’ for Apache Velocity.

Choices:

  • "JINJA"

  • "VELOCITY"

last_update_time

integer

Indicates the most recent timestamp when the template was modified or revised.

latest_version_time

integer

Indicates when the most recent version of a template was released or updated.

parent_template_id

string

Refers to the unique identifier of a template from which another template derives.

project_description

string

Narrative that elaborates on the purpose and scope of the project.

project_id

string

A unique identifier for the project, formatted as a UUID.

project_name

string

Title of the project within which the template is categorized and managed.

rollback_template_content

string

Refers to the process of reverting the content of a template back to a previous version or state.

rollback_template_params

list / elements=dictionary

A list of dictionaries defining parameters necessary for the rollback functionality of a template.

binding

string

Associates the parameter with its source.

custom_order

integer

Specifies a user-defined ordering for the parameter.

data_type

string

Identifies the data type of the parameter (e.g., string, integer, boolean).

default_value

string

Establishes a default value for the parameter, used if no other value is provided.

description

string

Provides a descriptive explanation of the parameter’s purpose.

display_name

string

The name of the parameter as displayed to users.

group

string

Categorizes the parameter into a named group for organizational purposes.

id

string

A unique identifier for the parameter, formatted as a UUID.

instruction_text

string

Gives guidance or instructions regarding the parameter’s use.

key

string

A unique key that identifies the parameter within the template.

not_param

boolean

Indicates whether the entry is not to be treated as a parameter.

Choices:

  • false

  • true

order

integer

Determines the sequence in which the parameter appears relative to others.

param_array

boolean

Specifies if the parameter should be treated as an array.

Choices:

  • false

  • true

parameter_name

string

The name of the parameter.

provider

string

Denotes the provider associated with the parameter.

range

list / elements=dictionary

Defines the permissible range for the parameter’s value.

id

string

Unique identifier for the range, represented as a UUID.

max_value

integer

Specifies the maximum allowable value for the parameter.

min_value

integer

Specifies the minimum allowable value for the parameter.

required

boolean

Dictates whether the parameter is mandatory for template operations.

Choices:

  • false

  • true

selection

dictionary

Contains options for parameter selection when a choice is available.

default_selected_values

list / elements=string

Lists the default values that are preselected.

id

string

A unique identifier for the selection entity, represented as a UUID.

selection_type

string

Specifies the type of selection, such as ‘SINGLE_SELECT’ or ‘MULTI_SELECT’.

selection_values

dictionary

A dictionary of available values for selection.

software_type

string

Applicable device software type. This field is mandatory to create a new template.

software_variant

string

Refers to a version or edition of a software application that differs from the main or standard release.

software_version

string

Applicable device software version.

template_content

string

The actual script or code constituting the body of the template.

template_description

string

Provides a overview of the template.

template_name

string

Name of template. This field is mandatory to create a new template.

template_params

list / elements=dictionary

The customization of the contents within the template.

binding

string

Associates the parameter with its source.

custom_order

integer

Specifies a user-defined ordering for the parameter.

data_type

string

Identifies the data type of the parameter (e.g., string, integer, boolean).

default_value

string

Establishes a default value for the parameter, used if no other value is provided.

description

string

Provides a descriptive explanation of the parameter’s purpose.

display_name

string

The name of the parameter as displayed to users.

group

string

Categorizes the parameter into a named group for organizational purposes.

id

string

A unique identifier for the parameter, formatted as a UUID.

instruction_text

string

Gives guidance or instructions regarding the parameter’s use.

key

string

A unique key that identifies the parameter within the template.

not_param

boolean

Indicates whether the entry is not to be treated as a parameter.

Choices:

  • false

  • true

order

integer

Determines the sequence in which the parameter appears relative to others.

param_array

boolean

Specifies if the parameter should be treated as an array.

Choices:

  • false

  • true

parameter_name

string

The name of the parameter.

provider

string

Denotes the provider associated with the parameter.

range

list / elements=dictionary

Defines the permissible range for the parameter’s value.

id

string

Unique identifier for the range, represented as a UUID.

max_value

integer

Specifies the maximum allowable value for the parameter.

min_value

integer

Specifies the minimum allowable value for the parameter.

required

boolean

Dictates whether the parameter is mandatory for template operations.

Choices:

  • false

  • true

selection

dictionary

Contains options for parameter selection when a choice is available.

default_selected_values

list / elements=string

Lists the default values that are preselected.

id

string

A unique identifier for the selection entity, represented as a UUID.

selection_type

string

Specifies the type of selection, such as ‘SINGLE_SELECT’ or ‘MULTI_SELECT’.

selection_values

dictionary

A dictionary of available values for selection.

template_tag

list / elements=dictionary

Refers to a keyword, label, or metadata assigned to a template.

id

string

A unique identifier for the tag, represented as a UUID.

name

string

The name of the tag.

validation_errors

dictionary

Refer to issues or discrepancies identified during the validation process.

rollback_template_errors

list / elements=dictionary

Validation or design conflicts errors of rollback template.

template_errors

list / elements=dictionary

Refer to issues or discrepancies encountered during the processing of a template within a software application.

template_id

string

A unique identifier for the template, represented as a UUID.

template_version

string

The current version of validation process in the template.

version

string

The current version of template.

version_description

string

Template version comments.

export

dictionary

Perform export on the projects and templates.

project

list / elements=string

Export the project(s) details.

template

list / elements=dictionary

Export the template(s) details.

project_name

string

Name of the project under the template available.

template_name

string

Name of the template which we need to be exported.

import

dictionary

Perform import on the projects and templates.

project

dictionary

Import the projects.

do_version

boolean

DoVersion query parameter. If this flag is true, creates a new version of the template with the imported contents, if the templates already exists. ” If false and if template already exists, then operation fails with ‘Template already exists’ error.

Choices:

  • false

  • true

template

dictionary

Import the templates.

do_version

boolean

DoVersion query parameter. If this flag is true, creates a new version of the template with the imported contents, if the templates already exists. ” If false and if template already exists, then operation fails with ‘Template already exists’ error.

Choices:

  • false

  • true

payload

list / elements=dictionary

The payload parameter is used to directly import configuration data into the system.

The payload provides an alternative way to import configurations without the need to reference an external file.

If both ‘template_file’ and ‘payload’ are provided, the ‘template_file’ will be given priority.

author

string

Identifies the creator of the template.

composite

boolean

Specifies if the template is composite.

Choices:

  • false

  • true

containing_templates

list / elements=dictionary

Refer to a set of templates within the main template to define more complex or modular configurations.

This is particularly useful in systems that support hierarchical or nested templates.

Here parent templates may contain child templates to form a complete configuration.

composite

boolean

Specifies if the template is composite.

Choices:

  • false

  • true

description

string

Provides a description of the template.

device_types

list / elements=dictionary

List of dictionaries details the types of devices that the templates can be applied to.

product_family

string

Denotes the family to which the device belongs.

product_series

string

Specifies the series classification of the device.

product_type

string

Describes the exact type of the device.

id

string

Unique identifier for the template, represented as a UUID.

language

string

Programming language used for templating. Options are ‘JINJA’ for Jinja templating or ‘VELOCITY’ for Apache Velocity.

Choices:

  • "JINJA"

  • "VELOCITY"

name

string

Designation of the template, serving as its unique name.

project_name

string

Title of the project within which the template is categorized and managed.

rollback_template_params

list / elements=dictionary

A list of dictionaries defining parameters necessary for the rollback functionality of a template.

binding

string

Associates the parameter with its source.

custom_order

integer

Specifies a user-defined ordering for the parameter.

data_type

string

Identifies the data type of the parameter (e.g., string, integer, boolean).

default_value

string

Establishes a default value for the parameter, used if no other value is provided.

description

string

Provides a descriptive explanation of the parameter’s purpose.

display_name

string

The name of the parameter as displayed to users.

group

string

Categorizes the parameter into a named group for organizational purposes.

id

string

A unique identifier for the parameter, formatted as a UUID.

instruction_text

string

Gives guidance or instructions regarding the parameter’s use.

key

string

A unique key that identifies the parameter within the template.

not_param

boolean

Indicates whether the entry is not to be treated as a parameter.

Choices:

  • false

  • true

order

integer

Determines the sequence in which the parameter appears relative to others.

param_array

boolean

Specifies if the parameter should be treated as an array.

Choices:

  • false

  • true

parameter_name

string

The name of the parameter.

provider

string

Denotes the provider associated with the parameter.

range

list / elements=dictionary

Defines the permissible range for the parameter’s value.

id

string

Unique identifier for the range, represented as a UUID.

max_value

integer

Specifies the maximum allowable value for the parameter.

min_value

integer

Specifies the minimum allowable value for the parameter.

required

boolean

Dictates whether the parameter is mandatory for template operations.

Choices:

  • false

  • true

selection

dictionary

Contains options for parameter selection when a choice is available.

default_selected_values

list / elements=string

Lists the default values that are preselected.

id

string

A unique identifier for the selection entity, represented as a UUID.

selection_type

string

Specifies the type of selection, such as ‘SINGLE_SELECT’ or ‘MULTI_SELECT’.

selection_values

dictionary

A dictionary of available values for selection.

tags

list / elements=dictionary

A list of dictionaries representing tags associated with the Configuration Template during creation.

id

string

The unique identifier for each tag, presented as a UUID.

name

string

The descriptive label or name assigned to the tag.

template_content

string

The actual script or code constituting the body of the template.

template_params

list / elements=dictionary

The customization of the contents within the template.

binding

string

Associates the parameter with its source.

custom_order

integer

Specifies a user-defined ordering for the parameter.

data_type

string

Identifies the data type of the parameter (e.g., string, integer, boolean).

default_value

string

Establishes a default value for the parameter, used if no other value is provided.

description

string

Provides a descriptive explanation of the parameter’s purpose.

display_name

string

The name of the parameter as displayed to users.

group

string

Categorizes the parameter into a named group for organizational purposes.

id

string

A unique identifier for the parameter, formatted as a UUID.

instruction_text

string

Gives guidance or instructions regarding the parameter’s use.

key

string

A unique key that identifies the parameter within the template.

not_param

boolean

Indicates whether the entry is not to be treated as a parameter.

Choices:

  • false

  • true

order

integer

Determines the sequence in which the parameter appears relative to others.

param_array

boolean

Specifies if the parameter should be treated as an array.

Choices:

  • false

  • true

parameter_name

string

The name of the parameter.

provider

string

Denotes the provider associated with the parameter.

range

list / elements=dictionary

Defines the permissible range for the parameter’s value.

id

string

Unique identifier for the range, represented as a UUID.

max_value

integer

Specifies the maximum allowable value for the parameter.

min_value

integer

Specifies the minimum allowable value for the parameter.

required

boolean

Dictates whether the parameter is mandatory for template operations.

Choices:

  • false

  • true

selection

dictionary

Contains options for parameter selection when a choice is available.

default_selected_values

list / elements=string

Lists the default values that are preselected.

id

string

A unique identifier for the selection entity, represented as a UUID.

selection_type

string

Specifies the type of selection, such as ‘SINGLE_SELECT’ or ‘MULTI_SELECT’.

selection_values

dictionary

A dictionary of available values for selection.

version

string

The current version of template.

create_time

integer

The creation time of the template refers to the initial development.

custom_params_order

boolean

Specifies the sequence in which custom parameters or variables should be arranged within the template.

Choices:

  • false

  • true

device_types

list / elements=dictionary

List of dictionaries details the types of devices that the templates can be applied to.

product_family

string

Denotes the family to which the device belongs.

product_series

string

Specifies the series classification of the device.

product_type

string

Describes the exact type of the device.

failure_policy

string

Define failure policy if template provisioning fails.

id

string

A unique identifier, represented as a UUID.

language

string

Programming language used for templating. Options are ‘JINJA’ for Jinja templating or ‘VELOCITY’ for Apache Velocity.

Choices:

  • "JINJA"

  • "VELOCITY"

last_update_time

integer

Indicates the most recent timestamp when the template was modified or revised.

latest_version_time

integer

Indicates when the most recent version of a template was released or updated.

parent_template_id

string

Refers to the unique identifier of a template from which another template derives.

project_description

string

Narrative that elaborates on the purpose and scope of the project.

project_id

string

A unique identifier for the project, formatted as a UUID.

project_name

string

Title of the project within which the template is categorized and managed.

rollback_template_content

string

Refers to the process of reverting the content of a template back to a previous version or state.

rollback_template_params

list / elements=dictionary

A list of dictionaries defining parameters necessary for the rollback functionality of a template.

binding

string

Associates the parameter with its source.

custom_order

integer

Specifies a user-defined ordering for the parameter.

data_type

string

Identifies the data type of the parameter (e.g., string, integer, boolean).

default_value

string

Establishes a default value for the parameter, used if no other value is provided.

description

string

Provides a descriptive explanation of the parameter’s purpose.

display_name

string

The name of the parameter as displayed to users.

group

string

Categorizes the parameter into a named group for organizational purposes.

id

string

A unique identifier for the parameter, formatted as a UUID.

instruction_text

string

Gives guidance or instructions regarding the parameter’s use.

key

string

A unique key that identifies the parameter within the template.

not_param

boolean

Indicates whether the entry is not to be treated as a parameter.

Choices:

  • false

  • true

order

integer

Determines the sequence in which the parameter appears relative to others.

param_array

boolean

Specifies if the parameter should be treated as an array.

Choices:

  • false

  • true

parameter_name

string

The name of the parameter.

provider

string

Denotes the provider associated with the parameter.

range

list / elements=dictionary

Defines the permissible range for the parameter’s value.

id

string

Unique identifier for the range, represented as a UUID.

max_value

integer

Specifies the maximum allowable value for the parameter.

min_value

integer

Specifies the minimum allowable value for the parameter.

required

boolean

Dictates whether the parameter is mandatory for template operations.

Choices:

  • false

  • true

selection

dictionary

Contains options for parameter selection when a choice is available.

default_selected_values

list / elements=string

Lists the default values that are preselected.

id

string

A unique identifier for the selection entity, represented as a UUID.

selection_type

string

Specifies the type of selection, such as ‘SINGLE_SELECT’ or ‘MULTI_SELECT’.

selection_values

dictionary

A dictionary of available values for selection.

software_type

string

Applicable device software type. This field is mandatory to create a new template.

software_variant

string

Refers to a version or edition of a software application that differs from the main or standard release.

software_version

string

Applicable device software version.

template_content

string

The actual script or code constituting the body of the template.

template_description

string

Provides a overview of the template.

template_name

string

Name of template. This field is mandatory to create a new template.

template_params

list / elements=dictionary

The customization of the contents within the template.

binding

string

Associates the parameter with its source.

custom_order

integer

Specifies a user-defined ordering for the parameter.

data_type

string

Identifies the data type of the parameter (e.g., string, integer, boolean).

default_value

string

Establishes a default value for the parameter, used if no other value is provided.

description

string

Provides a descriptive explanation of the parameter’s purpose.

display_name

string

The name of the parameter as displayed to users.

group

string

Categorizes the parameter into a named group for organizational purposes.

id

string

A unique identifier for the parameter, formatted as a UUID.

instruction_text

string

Gives guidance or instructions regarding the parameter’s use.

key

string

A unique key that identifies the parameter within the template.

not_param

boolean

Indicates whether the entry is not to be treated as a parameter.

Choices:

  • false

  • true

order

integer

Determines the sequence in which the parameter appears relative to others.

param_array

boolean

Specifies if the parameter should be treated as an array.

Choices:

  • false

  • true

parameter_name

string

The name of the parameter.

provider

string

Denotes the provider associated with the parameter.

range

list / elements=dictionary

Defines the permissible range for the parameter’s value.

id

string

Unique identifier for the range, represented as a UUID.

max_value

integer

Specifies the maximum allowable value for the parameter.

min_value

integer

Specifies the minimum allowable value for the parameter.

required

boolean

Dictates whether the parameter is mandatory for template operations.

Choices:

  • false

  • true

selection

dictionary

Contains options for parameter selection when a choice is available.

default_selected_values

list / elements=string

Lists the default values that are preselected.

id

string

A unique identifier for the selection entity, represented as a UUID.

selection_type

string

Specifies the type of selection, such as ‘SINGLE_SELECT’ or ‘MULTI_SELECT’.

selection_values

dictionary

A dictionary of available values for selection.

template_tag

list / elements=dictionary

Refers to a keyword, label, or metadata assigned to a template.

id

string

A unique identifier for the tag, represented as a UUID.

name

string

The name of the tag.

validation_errors

dictionary

Refer to issues or discrepancies identified during the validation process.

rollback_template_errors

list / elements=dictionary

Refer to errors or issues encountered during the process of reverting a template to a previous version or state.

template_errors

list / elements=dictionary

Refer to issues or discrepancies encountered during the processing of a template within a software application.

template_id

string

A unique identifier for the template, represented as a UUID.

template_version

string

The current version of validation process in the template.

version

string

The current version of template.

project_name

string

ProjectName path parameter. Project name to create template under the project.

template_file

string

Specifies the path to a JSON file that contains an import template.

If both ‘template_file’ and ‘payload’ are provided, the ‘template_file’ will be given priority.

config_verify

boolean

Set to True to verify the Cisco Catalyst Center after applying the playbook config.

Choices:

  • false ← (default)

  • true

dnac_api_task_timeout

integer

Defines the timeout in seconds for API calls to retrieve task details. If the task details are not received within this period, the process will end, and a timeout notification will be logged.

Default: 1200

dnac_debug

boolean

Indicates whether debugging is enabled in the Cisco Catalyst Center SDK.

Choices:

  • false ← (default)

  • true

dnac_host

string / required

The hostname of the Cisco Catalyst Center.

dnac_log

boolean

Flag to enable/disable playbook execution logging.

When true and dnac_log_file_path is provided, - Create the log file at the execution location with the specified name.

When true and dnac_log_file_path is not provided, - Create the log file at the execution location with the name ‘dnac.log’.

When false, - Logging is disabled.

If the log file doesn’t exist, - It is created in append or write mode based on the “dnac_log_append” flag.

If the log file exists, - It is overwritten or appended based on the “dnac_log_append” flag.

Choices:

  • false ← (default)

  • true

dnac_log_append

boolean

Determines the mode of the file. Set to True for ‘append’ mode. Set to False for ‘write’ mode.

Choices:

  • false

  • true ← (default)

dnac_log_file_path

string

Governs logging. Logs are recorded if dnac_log is True.

If path is not specified, - When ‘dnac_log_append’ is True, ‘dnac.log’ is generated in the current Ansible directory; logs are appended. - When ‘dnac_log_append’ is False, ‘dnac.log’ is generated; logs are overwritten.

If path is specified, - When ‘dnac_log_append’ is True, the file opens in append mode. - When ‘dnac_log_append’ is False, the file opens in write (w) mode. - In shared file scenarios, without append mode, content is overwritten after each module execution. - For a shared log file, set append to False for the 1st module (to overwrite); for subsequent modules, set append to True.

Default: "dnac.log"

dnac_log_level

string

Sets the threshold for log level. Messages with a level equal to or higher than this will be logged. Levels are listed in order of severity [CRITICAL, ERROR, WARNING, INFO, DEBUG].

CRITICAL indicates serious errors halting the program. Displays only CRITICAL messages.

ERROR indicates problems preventing a function. Displays ERROR and CRITICAL messages.

WARNING indicates potential future issues. Displays WARNING, ERROR, CRITICAL messages.

INFO tracks normal operation. Displays INFO, WARNING, ERROR, CRITICAL messages.

DEBUG provides detailed diagnostic info. Displays all log messages.

Default: "WARNING"

dnac_password

string

The password for authentication at the Cisco Catalyst Center.

dnac_port

string

Specifies the port number associated with the Cisco Catalyst Center.

Default: "443"

dnac_task_poll_interval

integer

Specifies the interval in seconds between successive calls to the API to retrieve task details.

Default: 2

dnac_username

aliases: user

string

The username for authentication at the Cisco Catalyst Center.

Default: "admin"

dnac_verify

boolean

Flag to enable or disable SSL certificate verification.

Choices:

  • false

  • true ← (default)

dnac_version

string

Specifies the version of the Cisco Catalyst Center that the SDK should use.

Default: "2.2.3.3"

state

string

The state of Cisco Catalyst Center after module completion.

Choices:

  • "merged" ← (default)

  • "deleted"

validate_response_schema

boolean

Flag for Cisco Catalyst Center SDK to enable the validation of request bodies against a JSON schema.

Choices:

  • false

  • true ← (default)

Notes

Note

  • SDK Method used are 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,

  • Paths used are 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,

  • Does not support check_mode

  • The plugin runs on the control node and does not use any ansible connection plugins instead embedded connection manager from Cisco Catalyst Center SDK

  • The parameters starting with dnac_ are used by the Cisco Catalyst Center Python SDK to establish the connection

Examples

- name: Create a new template.
  cisco.dnac.template_workflow_manager:
    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

- name: Export the projects.
  cisco.dnac.template_workflow_manager:
    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:
      export:
        project:
          - string
          - string

- name: Export the templates.
  cisco.dnac.template_workflow_manager:
    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:
      export:
        template:
          - project_name : string
            template_name: string
          - project_name: string
            template_name: string

- name: Import the Projects.
  cisco.dnac.template_workflow_manager:
    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:
      import:
        project:
          do_version: false
          payload:
          - name: string
          - name: string

- name: Import the Templates.
  cisco.dnac.template_workflow_manager:
    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:
      import:
        template:
          do_version: false
          project_name: string
          template_file: string

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

response_1

dictionary

A dictionary with versioning details of the template as returned by the Cisco Catalyst Center Python SDK

Returned: always

Sample: "{\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

A list with the response returned by the Cisco Catalyst Center Python SDK

Returned: always

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

response_3

dictionary

A dictionary with the exisiting template deatails as returned by the Cisco Catalyst Center Python SDK

Returned: always

Sample: "{\n  \"response\": {},\n  \"msg\": String\n}\n"

response_4

dictionary

Details of the templates in the list as returned by the Cisco Catalyst Center Python SDK

Returned: always

Sample: "{\n  \"response\": {},\n  \"msg\": String\n}\n"

response_5

dictionary

Details of the projects in the list as returned by the Cisco Catalyst Center Python SDK

Returned: always

Sample: "{\n  \"response\": {},\n  \"msg\": String\n}\n"

Authors

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