infinidat.infinibox.infini_fs module – Create, Delete or Modify filesystems on Infinibox

Note

This module is part of the infinidat.infinibox collection (version 1.4.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 infinidat.infinibox. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: infinidat.infinibox.infini_fs.

New in infinidat.infinibox 2.3.0

Synopsis

  • This module creates, deletes or modifies filesystems on Infinibox.

Requirements

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

Parameters

Parameter

Comments

fs_type

string

Specifies the file system type, regular or snapshot.

Choices:

  • "master" ← (default)

  • "snapshot"

name

string

File system name.

parent_fs_name

string

Specify a fs name. This is the fs parent for creating a snapshot. Required if fs_type is snapshot.

password

string / required

Infinibox User password.

pool

string / required

Pool that will host file system.

restore_fs_from_snapshot

boolean

Specify true to restore a file system (parent_fs_name) from an existing snapshot specified by the name field.

State must be set to present and fs_type must be ‘snapshot’.

Choices:

  • false ← (default)

  • true

serial

string

Serial number matching an existing file system.

size

string

File system size in MB, GB or TB units. See examples.

snapshot_lock_expires_at

string

This will cause a snapshot to be locked at the specified date-time. Uses python’s datetime format YYYY-mm-dd HH:MM:SS.ffffff, e.g. 2020-02-13 16:21:59.699700

snapshot_lock_only

boolean

This will lock an existing snapshot but will suppress refreshing the snapshot.

Choices:

  • false ← (default)

  • true

state

string

Creates/Modifies file system when present or removes when absent.

Choices:

  • "stat"

  • "present" ← (default)

  • "absent"

system

string / required

Infinibox Hostname or IPv4 Address.

thin_provision

boolean

Whether the master file system should be thin or thick provisioned.

Choices:

  • false

  • true ← (default)

user

string / required

Infinibox User username with sufficient priveledges ( see notes ).

write_protected

string

Specifies if the file system should be write protected. Default will be True for snapshots, False for master file systems.

Choices:

  • "Default" ← (default)

  • "True"

  • "False"

Notes

Note

  • This module requires infinisdk python library

  • You must set INFINIBOX_USER and INFINIBOX_PASSWORD environment variables if user and password arguments are not passed to the module directly

  • Ansible uses the infinisdk configuration file ~/.infinidat/infinisdk.ini if no credentials are provided. See http://infinisdk.readthedocs.io/en/latest/getting_started.html

  • All Infinidat modules support check mode (–check). However, a dryrun that creates resources may fail if the resource dependencies are not met for a task. For example, consider a task that creates a volume in a pool. If the pool does not exist, the volume creation task will fail. It will fail even if there was a previous task in the playbook that would have created the pool but did not because the pool creation was also part of the dry run.

Examples

- name: Create new file system named foo under pool named bar
  infini_fs:
    name: foo
    size: 1GB
    pool: bar
    thin_provision: true
    state: present
    user: admin
    password: secret
    system: ibox001
- name: Create snapshot named foo_snap from fs named foo
  infini_fs:
    name: foo_snap
    pool: bar
    fs_type: snapshot
    parent_fs_name: foo
    state: present
    user: admin
    password: secret
    system: ibox001
- name: Stat snapshot, also a fs, named foo_snap
  infini_fs:
    name: foo_snap
    pool: bar
    state: present
    user: admin
    password: secret
    system: ibox001
- name: Remove snapshot, also a fs, named foo_snap
  infini_fs:
    name: foo_snap
    state: absent
    user: admin
    password: secret
    system: ibox001

Authors

  • David Ohlemacher (@ohlemacher)