cisco / cisco.dnac / 6.13.3 / module / template_intent Resource module for Template functions | "added in version" 6.6.0 of cisco.dnac" Authors: Madhan Sankaranarayanan (@madhansansel) Rishita Chowdhary (@rishitachowdhary) Akash Bhaskaran (@akabhask) Muthu Rakesh (@MUTHU-RAKESH-27)cisco.dnac.template_intent (6.13.3) — module
Install with ansible-galaxy collection install cisco.dnac:==6.13.3
collections: - name: cisco.dnac version: 6.13.3
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.
- 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
state: choices: - merged - deleted default: merged description: The state of DNAC after module completion. type: str config: description: - List of details of templates being managed. elements: dict required: true suboptions: configuration_templates: description: Create/Update/Delete template. suboptions: author: description: Author of template. type: str composite: description: Is it composite template. type: bool containing_templates: description: Configuration Template Create's containingTemplates. elements: dict suboptions: composite: description: Is it composite template. type: bool description: description: Description of template. type: str device_types: description: deviceTypes on which templates would be applied. elements: dict suboptions: product_family: description: Device family. type: str product_series: description: Device series. type: str product_type: description: Device type. type: str type: list id: description: UUID of template. type: str language: choices: - JINJA - VELOCITY description: Template language type: str name: description: Name of template. type: str project_description: description: Description of the project created. type: str project_name: description: Name of the project under which templates are managed. type: str rollback_template_params: description: Params required for template rollback. elements: dict suboptions: binding: description: Bind to source. type: str custom_order: description: CustomOrder of template param. type: int data_type: description: Datatype of template param. type: str default_value: description: Default value of template param. type: str description: description: Description of template param. type: str display_name: description: Display name of param. type: str group: description: Group. type: str id: description: UUID of template param. type: str instruction_text: description: Instruction text for param. type: str key: description: Key. type: str not_param: description: Is it not a variable. type: bool order: description: Order of template param. type: int param_array: description: Is it an array. type: bool parameter_name: description: Name of template param. type: str provider: description: Provider. type: str range: description: Configuration Template Create's range. elements: dict suboptions: id: description: UUID of range. type: str max_value: description: Max value of range. type: int min_value: description: Min value of range. type: int type: list required: description: Is param required. type: bool selection: description: Configuration Template Create's selection. suboptions: default_selected_values: description: Default selection values. elements: str type: list id: description: UUID of selection. type: str selection_type: description: Type of selection(SINGLE_SELECT or MULTI_SELECT). type: str selection_values: description: Selection values. type: dict type: dict type: list tags: description: Configuration Template Create's tags. elements: dict suboptions: id: description: UUID of tag. type: str name: description: Name of tag. type: str type: list template_content: description: Template content. type: str template_params: description: Configuration Template Create's templateParams. elements: dict suboptions: binding: description: Bind to source. type: str custom_order: description: CustomOrder of template param. type: int data_type: description: Datatype of template param. type: str default_value: description: Default value of template param. type: str description: description: Description of template param. type: str display_name: description: Display name of param. type: str group: description: Group. type: str id: description: UUID of template param. type: str instruction_text: description: Instruction text for param. type: str key: description: Key. type: str not_param: description: Is it not a variable. type: bool order: description: Order of template param. type: int param_array: description: Is it an array. type: bool parameter_name: description: Name of template param. type: str provider: description: Provider. type: str range: description: Configuration Template Create's range. elements: dict suboptions: id: description: UUID of range. type: str max_value: description: Max value of range. type: int min_value: description: Min value of range. type: int type: list required: description: Is param required. type: bool selection: description: Configuration Template Create's selection. suboptions: default_selected_values: description: Default selection values. elements: str type: list id: description: UUID of selection. type: str selection_type: description: Type of selection(SINGLE_SELECT or MULTI_SELECT). type: str selection_values: description: Selection values. type: dict type: dict type: list version: description: Current version of template. type: str type: list create_time: description: Create time of template. type: int custom_params_order: description: Custom Params Order. type: bool device_types: description: Configuration Template Create's deviceTypes. This field is mandatory to create a new template. elements: dict suboptions: product_family: description: Device family. type: str product_series: description: Device series. type: str product_type: description: Device type. type: str type: list failure_policy: description: Define failure policy if template provisioning fails. type: str id: description: UUID of template. type: str language: choices: - JINJA - VELOCITY description: Template language type: str last_update_time: description: Update time of template. type: int latest_version_time: description: Latest versioned template time. type: int parent_template_id: description: Parent templateID. type: str project_description: description: Project Description. type: str project_id: description: Project UUID. type: str project_name: description: Project name. type: str rollback_template_content: description: Rollback template content. type: str rollback_template_params: description: Configuration Template Create's rollbackTemplateParams. elements: dict suboptions: binding: description: Bind to source. type: str custom_order: description: CustomOrder of template param. type: int data_type: description: Datatype of template param. type: str default_value: description: Default value of template param. type: str description: description: Description of template param. type: str display_name: description: Display name of param. type: str group: description: Group. type: str id: description: UUID of template param. type: str instruction_text: description: Instruction text for param. type: str key: description: Key. type: str not_param: description: Is it not a variable. type: bool order: description: Order of template param. type: int param_array: description: Is it an array. type: bool parameter_name: description: Name of template param. type: str provider: description: Provider. type: str range: description: Configuration Template Create's range. elements: dict suboptions: id: description: UUID of range. type: str max_value: description: Max value of range. type: int min_value: description: Min value of range. type: int type: list required: description: Is param required. type: bool selection: description: Configuration Template Create's selection. suboptions: default_selected_values: description: Default selection values. elements: str type: list id: description: UUID of selection. type: str selection_type: description: Type of selection(SINGLE_SELECT or MULTI_SELECT). type: str selection_values: description: Selection values. type: dict type: dict type: list software_type: description: Applicable device software type. This field is mandatory to create a new template. type: str software_variant: description: Applicable device software variant. type: str software_version: description: Applicable device software version. type: str template_content: description: Template content. type: str template_description: description: Description of template. type: str template_name: description: Name of template. This field is mandatory to create a new template. type: str template_params: description: Configuration Template Create's templateParams. elements: dict suboptions: binding: description: Bind to source. type: str custom_order: description: CustomOrder of template param. type: int data_type: description: Datatype of template param. type: str default_value: description: Default value of template param. type: str description: description: Description of template param. type: str display_name: description: Display name of param. type: str group: description: Group. type: str id: description: UUID of template param. type: str instruction_text: description: Instruction text for param. type: str key: description: Key. type: str not_param: description: Is it not a variable. type: bool order: description: Order of template param. type: int param_array: description: Is it an array. type: bool parameter_name: description: Name of template param. type: str provider: description: Provider. type: str range: description: Configuration Template Create's range. elements: dict suboptions: id: description: UUID of range. type: str max_value: description: Max value of range. type: int min_value: description: Min value of range. type: int type: list required: description: Is param required. type: bool selection: description: Configuration Template Create's selection. suboptions: default_selected_values: description: Default selection values. elements: str type: list id: description: UUID of selection. type: str selection_type: description: Type of selection(SINGLE_SELECT or MULTI_SELECT). type: str selection_values: description: Selection values. type: dict type: dict type: list template_tag: description: Configuration Template Create's tags. elements: dict suboptions: id: description: UUID of tag. type: str name: description: Name of tag. type: str type: list validation_errors: description: Configuration Template Create's validationErrors. suboptions: rollback_template_errors: description: Validation or design conflicts errors of rollback template. elements: dict type: list template_errors: description: Validation or design conflicts errors. elements: dict type: list template_id: description: UUID of template. type: str template_version: description: Current version of template. type: str type: dict version: description: Current version of template. type: str version_description: description: Template version comments. type: str type: dict export: description: Export the project/template details. suboptions: project: description: Export the project. elements: str type: list template: description: Export the template. elements: dict suboptions: project_name: description: Name of the project under the template available. type: str template_name: description: Name of the template which we need to export type: str type: list type: dict import: description: Import the project/template details. suboptions: project: description: Import the project details. suboptions: do_version: description: 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. type: bool type: dict template: description: Import the template details. suboptions: do_version: description: 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. type: bool payload: description: Configuration Template Import Template's payload. elements: dict suboptions: author: description: Author of template. type: str composite: description: Is it composite template. type: bool containing_templates: description: Configuration Template Import Template's containingTemplates. elements: dict suboptions: composite: description: Is it composite template. type: bool description: description: Description of template. type: str device_types: description: Configuration Template Import Template's deviceTypes. elements: dict suboptions: product_family: description: Device family. type: str product_series: description: Device series. type: str product_type: description: Device type. type: str type: list id: description: UUID of template. type: str language: description: Template language (JINJA or VELOCITY). type: str name: description: Name of template. type: str project_name: description: Project name. type: str rollback_template_params: description: Configuration Template Import Template's rollbackTemplateParams. elements: dict suboptions: binding: description: Bind to source. type: str custom_order: description: CustomOrder of template param. type: int data_type: description: Datatype of template param. type: str default_value: description: Default value of template param. type: str description: description: Description of template param. type: str display_name: description: Display name of param. type: str group: description: Group. type: str id: description: UUID of template param. type: str instruction_text: description: Instruction text for param. type: str key: description: Key. type: str not_param: description: Is it not a variable. type: bool order: description: Order of template param. type: int param_array: description: Is it an array. type: bool parameter_name: description: Name of template param. type: str provider: description: Provider. type: str range: description: Configuration Template Import Template's range. elements: dict suboptions: id: description: UUID of range. type: str max_value: description: Max value of range. type: int min_value: description: Min value of range. type: int type: list required: description: Is param required. type: bool selection: description: Configuration Template Import Template's selection. suboptions: default_selected_values: description: Default selection values. elements: str type: list id: description: UUID of selection. type: str selection_type: description: Type of selection(SINGLE_SELECT or MULTI_SELECT). type: str selection_values: description: Selection values. type: dict type: dict type: list tags: description: Configuration Template Import Template's tags. elements: dict suboptions: id: description: UUID of tag. type: str name: description: Name of tag. type: str type: list template_content: description: Template content. type: str template_params: description: Configuration Template Import Template's templateParams. elements: dict suboptions: binding: description: Bind to source. type: str custom_order: description: CustomOrder of template param. type: int data_type: description: Datatype of template param. type: str default_value: description: Default value of template param. type: str description: description: Description of template param. type: str display_name: description: Display name of param. type: str group: description: Group. type: str id: description: UUID of template param. type: str instruction_text: description: Instruction text for param. type: str key: description: Key. type: str not_param: description: Is it not a variable. type: bool order: description: Order of template param. type: int param_array: description: Is it an array. type: bool parameter_name: description: Name of template param. type: str provider: description: Provider. type: str range: description: Configuration Template Import Template's range. elements: dict suboptions: id: description: UUID of range. type: str max_value: description: Max value of range. type: int min_value: description: Min value of range. type: int type: list required: description: Is param required. type: bool selection: description: Configuration Template Import Template's selection. suboptions: default_selected_values: description: Default selection values. elements: str type: list id: description: UUID of selection. type: str selection_type: description: Type of selection(SINGLE_SELECT or MULTI_SELECT). type: str selection_values: description: Selection values. type: dict type: dict type: list version: description: Current version of template. type: str type: list create_time: description: Create time of template. type: int custom_params_order: description: Custom Params Order. type: bool description: description: Description of template. type: str device_types: description: Configuration Template Import Template's deviceTypes. elements: dict suboptions: product_family: description: Device family. type: str product_series: description: Device series. type: str product_type: description: Device type. type: str type: list failure_policy: description: Define failure policy if template provisioning fails. type: str id: description: UUID of template. type: str language: description: Template language (JINJA or VELOCITY). type: str last_update_time: description: Update time of template. type: int latest_version_time: description: Latest versioned template time. type: int name: description: Name of template. type: str parent_template_id: description: Parent templateID. type: str project_id: description: Project UUID. type: str project_name: description: Project name. type: str rollback_template_content: description: Rollback template content. type: str rollback_template_params: description: Configuration Template Import Template's rollbackTemplateParams. elements: dict suboptions: binding: description: Bind to source. type: str custom_order: description: CustomOrder of template param. type: int data_type: description: Datatype of template param. type: str default_value: description: Default value of template param. type: str description: description: Description of template param. type: str display_name: description: Display name of param. type: str group: description: Group. type: str id: description: UUID of template param. type: str instruction_text: description: Instruction text for param. type: str key: description: Key. type: str not_param: description: Is it not a variable. type: bool order: description: Order of template param. type: int param_array: description: Is it an array. type: bool parameter_name: description: Name of template param. type: str provider: description: Provider. type: str range: description: Configuration Template Import Template's range. elements: dict suboptions: id: description: UUID of range. type: str max_value: description: Max value of range. type: int min_value: description: Min value of range. type: int type: list required: description: Is param required. type: bool selection: description: Configuration Template Import Template's selection. suboptions: default_selected_values: description: Default selection values. elements: str type: list id: description: UUID of selection. type: str selection_type: description: Type of selection(SINGLE_SELECT or MULTI_SELECT). type: str selection_values: description: Selection values. type: dict type: dict type: list software_type: description: Applicable device software type. type: str software_variant: description: Applicable device software variant. type: str software_version: description: Applicable device software version. type: str tags: description: Configuration Template Import Template's tags. elements: dict suboptions: id: description: UUID of tag. type: str name: description: Name of tag. type: str type: list template_content: description: Template content. type: str template_params: description: Configuration Template Import Template's templateParams. elements: dict suboptions: binding: description: Bind to source. type: str custom_order: description: CustomOrder of template param. type: int data_type: description: Datatype of template param. type: str default_value: description: Default value of template param. type: str description: description: Description of template param. type: str display_name: description: Display name of param. type: str group: description: Group. type: str id: description: UUID of template param. type: str instruction_text: description: Instruction text for param. type: str key: description: Key. type: str not_param: description: Is it not a variable. type: bool order: description: Order of template param. type: int param_array: description: Is it an array. type: bool parameter_name: description: Name of template param. type: str provider: description: Provider. type: str range: description: Configuration Template Import Template's range. elements: dict suboptions: id: description: UUID of range. type: str max_value: description: Max value of range. type: int min_value: description: Min value of range. type: int type: list required: description: Is param required. type: bool selection: description: Configuration Template Import Template's selection. suboptions: default_selected_values: description: Default selection values. elements: str type: list id: description: UUID of selection. type: str selection_type: description: Type of selection(SINGLE_SELECT or MULTI_SELECT). type: str selection_values: description: Selection values. type: dict type: dict type: list validation_errors: description: Configuration Template Import Template's validationErrors. suboptions: rollback_template_errors: description: Validation or design conflicts errors of rollback template. type: dict template_errors: description: Validation or design conflicts errors. type: dict template_id: description: UUID of template. type: str template_version: description: Current version of template. type: str type: dict version: description: Current version of template. type: str type: list project_name: description: ProjectName path parameter. Project name to create template under the project. type: str type: dict type: dict type: list dnac_log: default: false description: - 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. type: bool dnac_host: description: - The Cisco DNA Center hostname. required: true type: str dnac_port: default: '443' description: - The Cisco DNA Center port. type: str dnac_debug: default: false description: - Flag for Cisco DNA Center SDK to enable debugging. type: bool dnac_verify: default: true description: - Flag to enable or disable SSL certificate verification. type: bool dnac_version: default: 2.2.3.3 description: - Informs the SDK which version of Cisco DNA Center to use. type: str config_verify: default: false description: Set to True to verify the Cisco DNA Center after applying the playbook config. type: bool dnac_password: description: - The Cisco DNA Center password to authenticate. type: str dnac_username: aliases: - user default: admin description: - The Cisco DNA Center username to authenticate. type: str dnac_log_level: default: WARNING description: - 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. type: str dnac_log_append: default: true description: Determines the mode of the file. Set to True for 'append' mode. Set to False for 'write' mode. type: bool dnac_log_file_path: default: dnac.log description: - 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. type: str dnac_api_task_timeout: default: 1200 description: 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. type: int dnac_task_poll_interval: default: 2 description: Specifies the interval in seconds between successive calls to the API to retrieve task details. type: int validate_response_schema: default: true description: - Flag for Cisco DNA Center SDK to enable the validation of request bodies against a JSON schema. type: bool
response_1: description: A dictionary with versioning details of the template as returned by the DNAC 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" type: dict response_2: description: A list with the response returned by the Cisco DNAC Python SDK returned: always sample: "{\n \"response\": [],\n \"msg\": String\n}\n" type: list response_3: description: A dictionary with the exisiting template deatails as returned by the Cisco DNAC Python SDK returned: always sample: "{\n \"response\": {},\n \"msg\": String\n}\n" type: dict response_4: description: Details of the templates in the list as returned by the Cisco DNAC Python SDK returned: always sample: "{\n \"response\": {},\n \"msg\": String\n}\n" type: dict response_5: description: Details of the projects in the list as returned by the Cisco DNAC Python SDK returned: always sample: "{\n \"response\": {},\n \"msg\": String\n}\n" type: dict