purestorage.flasharray.purefa_dirsnap – Manage FlashArray File System Directory Snapshots

Note

This plugin is part of the purestorage.flasharray collection (version 1.11.0).

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 purestorage.flasharray.

To use it in a playbook, specify: purestorage.flasharray.purefa_dirsnap.

New in version 1.9.0: of purestorage.flasharray

Synopsis

  • Create/Delete FlashArray File System directory snapshots

  • A full snapshot name is constructed in the form of DIR.CLIENT_NAME.SUFFIX where DIR is the managed directory name, CLIENT_NAME is the client name, and SUFFIX is the suffix.

  • The client visible snapshot name is CLIENT_NAME.SUFFIX.

Requirements

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

  • python >= 2.7

  • purestorage >= 1.19

  • py-pure-client >= 1.6.0

  • netaddr

  • requests

Parameters

Parameter Choices/Defaults Comments
api_token
string
FlashArray API token for admin privileged user.
client
string / required
The client name portion of the client visible snapshot name
eradicate
boolean
    Choices:
  • no ←
  • yes
Define whether to eradicate the snapshot on delete or leave in trash
fa_url
string
FlashArray management IPv4 address or Hostname.
filesystem
string / required
Name of the filesystem the directory links to.
keep_for
integer
Default:
0
Retention period, after which snapshots will be eradicated
Specify in seconds. Range 300 - 31536000 (5 minutes to 1 year)
Set to 0 for no retention period.
If not specified on create will default to 0 (no retention period)
name
string / required
Name of the directory to snapshot
state
string
    Choices:
  • absent
  • present ←
Define whether the directory snapshot should exist or not.
suffix
string
Snapshot suffix to use

Notes

Note

  • This module requires the purestorage and py-pure-client Python libraries

  • Additional Python librarues may be required for specific modules.

  • You must set PUREFA_URL and PUREFA_API environment variables if fa_url and api_token arguments are not passed to the module directly

Examples

- name: Create a snapshot direcotry foo in filesysten bar for client test with suffix test
  purefa_dirsnap:
    name: foo
    filesystem: bar
    client: test
    suffix: test
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Update retention time for a snapshot foo:bar.client.test
  purefa_dirsnap:
    name: foo
    filesystem: bar
    client: client
    suffix: test
    keep_for: 300 # 5 minutes
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Delete snapshot foo:bar.client.test
  purefa_dirsnap:
    name: foo
    filesystem: bar
    client: client
    suffix: test
    state: absent
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Recover deleted snapshot foo:bar.client.test
  purefa_dirsnap:
    name: foo
    filesystem: bar
    client: client
    suffix: test
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Delete and eradicate snapshot foo:bar.client.test
  purefa_dirsnap:
    name: foo
    filesystem: bar
    client: client
    suffix: test
    state: absent
    eradicate: true
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

- name: Eradicate deleted snapshot foo:bar.client.test
  purefa_dirsnap:
    name: foo
    filesystem: bar
    client: client
    suffix: test
    eradicate: true
    state: absent
    fa_url: 10.10.10.2
    api_token: e31060a7-21fc-e277-6240-25983c6c4592

Authors