infinidat.infinibox.infini_export – Create, Delete or Modify NFS Exports on Infinibox
Note
This plugin is part of the infinidat.infinibox collection (version 1.2.4).
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
.
To use it in a playbook, specify: infinidat.infinibox.infini_export
.
New in version 2.3: of infinidat.infinibox
Synopsis
- This module creates, deletes or modifies NFS exports on Infinibox.
Requirements
The below requirements are needed on the host that executes this module.
- infinisdk (https://infinisdk.readthedocs.io/en/latest/)
- munch
- python2 >= 2.7 or python3 >= 3.6
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
client_list string | Default: "All Hosts(*), RW, no_root_squash: True" | List of dictionaries with client entries. See examples. Check infini_export_client module to modify individual NFS client entries for export. |
filesystem string / required | Name of exported file system. | |
name string / required | Export name. Must start with a forward slash, e.g. name=/data. | |
password string | Infinibox User password. | |
state string |
| Creates/Modifies export when present, removes when absent, or provides export details with stat. |
system string / required | Infinibox Hostname or IPv4 Address. | |
user string | Infinibox User username with sufficient priveledges ( see notes ). |
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: Export bar filesystem under foo pool as /data infini_export: name: /data01 filesystem: foo state: present # Default user: admin password: secret system: ibox001 - name: Get status of export bar filesystem under foo pool as /data infini_export: name: /data01 filesystem: foo state: stat user: admin password: secret system: ibox001 - name: Remove export bar filesystem under foo pool as /data infini_export: name: /data01 filesystem: foo state: absent user: admin password: secret system: ibox001 - name: Export and specify client list explicitly infini_export: name: /data02 filesystem: foo client_list: - client: 192.168.0.2 access: RW no_root_squash: True - client: 192.168.0.100 access: RO no_root_squash: False - client: 192.168.0.10-192.168.0.20 access: RO no_root_squash: False system: ibox001 user: admin password: secret
Authors
- Gregory Shulov (@GR360RY)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/infinidat/infinibox/infini_export_module.html