aci_config_rollback - Provides rollback and rollback preview functionality (config:ImportP)¶
New in version 2.4.
Synopsis¶
- Provides rollback and rollback preview functionality for Cisco ACI fabrics.
- Config Rollbacks are done using snapshots
aci_snapshot
with the configImportP class.
Parameters¶
Parameter | Choices/Defaults | Comments |
---|---|---|
certificate_name |
The X.509 certificate name attached to the APIC AAA user used for signature-based authentication.
It defaults to the
private_key basename, without extension.aliases: cert_name |
|
compare_export_policy |
The export policy that the
compare_snapshot is associated to. |
|
compare_snapshot |
The name of the snapshot to compare with
snapshot . |
|
description |
The description for the Import Policy.
aliases: descr |
|
export_policy
required |
The export policy that the
snapshot is associated to. |
|
fail_on_decrypt
bool |
|
Determines if the APIC should fail the rollback if unable to decrypt secured data.
The APIC defaults to
yes when unset. |
host
required |
IP Address or hostname of APIC resolvable by Ansible control host.
aliases: hostname |
|
import_mode |
|
Determines how the import should be handled by the APIC.
The APIC defaults to
atomic when unset. |
import_policy |
The name of the Import Policy to use for config rollback.
|
|
import_type |
|
Determines how the current and snapshot configuration should be compared for replacement.
The APIC defaults to
replace when unset. |
output_level |
|
Influence the output of this ACI module.
normal means the standard output, incl. current dictinfo adds informational output, incl. previous , proposed and sent dictsdebug adds debugging output, incl. filter_string , method , response , status and url information |
password
required |
The password to use for authentication.
This option is mutual exclusive with
private_key . If private_key is provided too, it will be used instead. |
|
port |
Port number to be used for REST connection.
The default value depends on parameter `use_ssl`.
|
|
private_key
required |
PEM formatted file that contains your private key to be used for signature-based authentication.
The name of the key (without extension) is used as the certificate name in ACI, unless
certificate_name is specified.This option is mutual exclusive with
password . If password is provided too, it will be ignored.aliases: cert_key |
|
snapshot
required |
The name of the snapshot to rollback to, or the base snapshot to use for comparison.
The
aci_snapshot module can be used to query the list of available snapshots. |
|
state |
|
Use
preview for previewing the diff between two snapshots.Use
rollback for reverting the configuration to a previous snapshot. |
timeout
int |
Default: 30
|
The socket level timeout in seconds.
|
use_proxy
bool |
|
If
no , it will not use a proxy, even if one is defined in an environment variable on the target hosts. |
use_ssl
bool |
|
If
no , an HTTP connection will be used instead of the default HTTPS connection. |
username |
Default: admin
|
The username to use for authentication.
aliases: user |
validate_certs
bool |
|
If
no , SSL certificates will not be validated.This should only set to
no when used on personally controlled sites using self-signed certificates. |
Notes¶
Note
- More information about the internal APIC class config:ImportP from the APIC Management Information Model reference.
- Please read the Cisco ACI Guide for more detailed information on how to manage your ACI infrastructure using Ansible.
Examples¶
---
- name: Create a Snapshot
aci_config_snapshot:
host: apic
username: admin
password: SomeSecretPassword
export_policy: config_backup
state: present
delegate_to: localhost
- name: Query Existing Snapshots
aci_config_snapshot:
host: apic
username: admin
password: SomeSecretPassword
export_policy: config_backup
state: query
delegate_to: localhost
- name: Compare Snapshot Files
aci_config_rollback:
host: apic
username: admin
password: SomeSecretPassword
export_policy: config_backup
snapshot: run-2017-08-28T06-24-01
compare_export_policy: config_backup
compare_snapshot: run-2017-08-27T23-43-56
state: preview
delegate_to: localhost
- name: Rollback Configuration
aci_config_rollback:
host: apic
username: admin
password: SomeSecretPassword
import_policy: rollback_config
export_policy: config_backup
snapshot: run-2017-08-28T06-24-01
state: rollback
delegate_to: localhost
- name: Rollback Configuration
aci_config_rollback:
host: apic
username: admin
password: SomeSecretPassword
import_policy: rollback_config
export_policy: config_backup
snapshot: run-2017-08-28T06-24-01
description: Rollback 8-27 changes
import_mode: atomic
import_type: replace
fail_on_decrypt: yes
state: rollback
delegate_to: localhost
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
error
dict
|
failure |
The error information as returned from the APIC
Sample:
{'text': 'unknown managed object class foo', 'code': '122'}
|
filter_string
string
|
failure or debug |
The filter string used for the request
Sample:
?rsp-prop-include=config-only
|
method
string
|
failure or debug |
The HTTP method used for the request to the APIC
Sample:
POST
|
preview
string
|
when state is preview |
A preview between two snapshots
|
raw
string
|
parse error |
The raw output returned by the APIC REST API (xml or json)
Sample:
<?xml version="1.0" encoding="UTF-8"?><imdata totalCount="1"><error code="122" text="unknown managed object class foo"/></imdata>
|
response
string
|
failure or debug |
The HTTP response from the APIC
Sample:
OK (30 bytes)
|
status
int
|
failure or debug |
The HTTP status from the APIC
Sample:
200
|
url
string
|
failure or debug |
The HTTP url used for the request to the APIC
Sample:
https://10.11.12.13/api/mo/uni/tn-production.json
|
Status¶
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
Maintenance¶
This module is flagged as certified which means that it is maintained by an Ansible Partner. See Module Maintenance & Support for more info.
For a list of other modules that are also maintained by an Ansible Partner, see here.
Author¶
- Jacob McGill (@jmcgill298)
Hint
If you notice any issues in this documentation you can edit this document to improve it.