bigip_ucs_fetch - Fetches a UCS file from remote nodes¶
New in version 2.5.
Synopsis¶
- This module is used for fetching UCS files from remote machines and storing them locally in a file tree, organized by hostname. Note that this module is written to transfer UCS files that might not be present, so a missing remote UCS won’t be an error unless fail_on_missing is set to ‘yes’.
Requirements¶
The below requirements are needed on the host that executes this module.
- f5-sdk >= 3.0.16
Parameters¶
Parameter | Choices/Defaults | Comments | |
---|---|---|---|
backup
bool |
|
Create a backup file including the timestamp information so you can get the original file back if you somehow clobbered it incorrectly.
|
|
create_on_missing
bool |
|
Creates the UCS based on the value of
src if the file does not already exist on the remote system. |
|
dest
required |
A directory to save the UCS file into.
|
||
encryption_password |
Password to use to encrypt the UCS file if desired
|
||
fail_on_missing
bool |
|
Make the module fail if the UCS file on the remote system is missing.
|
|
force
bool |
|
If
no , the file will only be transferred if the destination does not exist. |
|
password
required |
The password for the user account used to connect to the BIG-IP.
You may omit this option by setting the environment variable
F5_PASSWORD .aliases: pass, pwd |
||
provider
(added in 2.5) |
Default: None
|
A dict object containing connection details.
|
|
ssh_keyfile |
Specifies the SSH keyfile to use to authenticate the connection to the remote device. This argument is only used for cli transports.
You may omit this option by setting the environment variable
ANSIBLE_NET_SSH_KEYFILE . |
||
timeout |
Default: 10
|
Specifies the timeout in seconds for communicating with the network device for either connecting or sending commands. If the timeout is exceeded before the operation is completed, the module will error.
|
|
server
required |
The BIG-IP host.
You may omit this option by setting the environment variable
F5_SERVER . |
||
user
required |
The username to connect to the BIG-IP with. This user must have administrative privileges on the device.
You may omit this option by setting the environment variable
F5_USER . |
||
server_port |
Default: 443
|
The BIG-IP server port.
You may omit this option by setting the environment variable
F5_SERVER_PORT . |
|
password
required |
The password for the user account used to connect to the BIG-IP.
You may omit this option by setting the environment variable
F5_PASSWORD .aliases: pass, pwd |
||
validate_certs
bool |
|
If
no , SSL certificates are not validated. Use this only on personally controlled sites using self-signed certificates.You may omit this option by setting the environment variable
F5_VALIDATE_CERTS . |
|
transport
required |
|
Configures the transport connection to use when connecting to the remote device.
|
|
server
required |
The BIG-IP host.
You may omit this option by setting the environment variable
F5_SERVER . |
||
server_port
(added in 2.2) |
Default: 443
|
The BIG-IP server port.
You may omit this option by setting the environment variable
F5_SERVER_PORT . |
|
src |
The name of the UCS file to create on the remote server for downloading
|
||
user
required |
The username to connect to the BIG-IP with. This user must have administrative privileges on the device.
You may omit this option by setting the environment variable
F5_USER . |
||
validate_certs
bool (added in 2.0) |
|
If
no , SSL certificates are not validated. Use this only on personally controlled sites using self-signed certificates.You may omit this option by setting the environment variable
F5_VALIDATE_CERTS . |
Notes¶
Note
- BIG-IP provides no way to get a checksum of the UCS files on the system via any interface except, perhaps, logging in directly to the box (which would not support appliance mode). Therefore, the best this module can do is check for the existence of the file on disk; no check-summing.
- For more information on using Ansible to manage F5 Networks devices see https://www.ansible.com/integrations/networks/f5.
- Requires the f5-sdk Python package on the host. This is as easy as
pip install f5-sdk
. - Requires BIG-IP software version >= 12.
- The F5 modules only manipulate the running configuration of the F5 product. To ensure that BIG-IP specific configuration persists to disk, be sure to include at least one task that uses the bigip_config module to save the running configuration. Refer to the module’s documentation for the correct usage of the module to save your running configuration.
Examples¶
- name: Download a new UCS
bigip_ucs_fetch:
server: lb.mydomain.com
user: admin
password: secret
src: cs_backup.ucs
dest: /tmp/cs_backup.ucs
delegate_to: localhost
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
backup_file
string
|
changed and if backup=yes |
Name of backup file created
Sample:
/path/to/[email protected]:09~
|
checksum
string
|
success or changed |
The SHA1 checksum of the downloaded file
Sample:
7b46bbe4f8ebfee64761b5313855618f64c64109
|
dest
string
|
success |
Location on the ansible host that the UCS was saved to
Sample:
/path/to/file.txt
|
gid
int
|
success |
Group id of the UCS file, after execution
Sample:
100
|
group
string
|
success |
Group of the UCS file, after execution
Sample:
httpd
|
md5sum
string
|
changed or success |
The MD5 checksum of the downloaded file
Sample:
96cacab4c259c4598727d7cf2ceb3b45
|
mode
string
|
success |
Permissions of the target UCS, after execution
Sample:
420
|
owner
string
|
success |
Owner of the UCS file, after execution
Sample:
httpd
|
size
int
|
success |
Size of the target UCS, after execution
Sample:
1220
|
src
string
|
changed |
Name of the UCS file on the remote BIG-IP to download. If not specified, then this will be a randomly generated filename
Sample:
cs_backup.ucs
|
uid
int
|
success |
Owner id of the UCS file, after execution
Sample:
100
|
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¶
- Tim Rupp (@caphrim007)
Hint
If you notice any issues in this documentation you can edit this document to improve it.