# ovirt_storage_connection – Module to manage storage connections in oVirt

New in version 2.4.

- Synopsis

- Requirements

- Parameters

- Notes

- Examples

- Return Values

- Status

## Synopsis

- Module to manage storage connections in oVirt

## Requirements

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

- python >= 2.7

- ovirt-engine-sdk-python >= 4.3.0

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
address - |  | Address of the storage server. E.g.: myserver.mydomain.com
auth dictionary / required |  | Dictionary with values needed to create HTTP/HTTPS connection to oVirt:
| ca_file string |  | A PEM file containing the trusted CA certificates. The certificate presented by the server will be verified using these CA certificates. If `ca_file` parameter is not set, system wide CA certificate store is used. Default value is set by `OVIRT_CAFILE` environment variable.
| headers dictionary |  | Dictionary of HTTP headers to be added to each API call.
| hostname string |  | A string containing the hostname of the server, usually something like `server.example.com`. Default value is set by `OVIRT_HOSTNAME` environment variable. Either `url` or `hostname` is required.

insecure
boolean

Choices:
- no
- yes

A boolean flag that indicates if the server TLS certificate and host name should be checked.

kerberos
boolean

Choices:
- no
- yes

A boolean flag indicating if Kerberos authentication should be used instead of the default basic authentication.

| password string / required |  | The password of the user. Default value is set by `OVIRT_PASSWORD` environment variable.
| token string |  | Token to be used instead of login with username/password. Default value is set by `OVIRT_TOKEN` environment variable.
| url string |  | A string containing the API URL of the server, usually something like `https://server.example.com/ovirt-engine/api`. Default value is set by `OVIRT_URL` environment variable. Either `url` or `hostname` is required.
| username string / required |  | The name of the user, something like admin@internal. Default value is set by `OVIRT_USERNAME` environment variable.

fetch_nested
boolean

Choices:
- no
- yes

If True the module will fetch additional data from the API.
It will fetch IDs of the VMs disks, snapshots, etc. User can configure to fetch other attributes of the nested entities by specifying `nested_attributes`.

force
boolean

Choices:
- no
- yes

This parameter is relevant only when updating a connection.
If true the storage domain don't have to be in MAINTENANCE state, so the storage connection is updated.

id - |  | Id of the storage connection to manage.
mount_options - |  | Option which will be passed when mounting storage.
nested_attributes list |  | Specifies list of the attributes which should be fetched from the API. This parameter apply only when `fetch_nested` is true.
nfs_retrans - |  | The number of times to retry a request before attempting further recovery actions. Range 0 to 65535.
nfs_timeout - |  | The time in tenths of a second to wait for a response before retrying NFS requests. Range 0 to 65535.
nfs_version - |  | NFS version. One of: auto, v3, v4 or v4_1.
password - |  | A CHAP password for logging into a target.
path - |  | Path of the mount point of the storage. E.g.: /path/to/my/data
poll_interval integer | Default: 3 | Number of the seconds the module waits until another poll request on entity status is sent.
port - |  | Port of the iSCSI storage server.

state
-

Choices:
- present ←
- absent

Should the storage connection be present or absent.

storage - |  | Name of the storage domain to be used with storage connection.
target - |  | The target IQN for the storage device.
timeout integer | Default: 180 | The amount of time in seconds the module should wait for the instance to get into desired state.
type - |  | Storage type. For example: nfs, iscsi, etc.
username - |  | A CHAP username for logging into a target.
vfs_type - |  | Virtual File System type.

wait
boolean

Choices:
- no
- yes ←

`yes` if the module should wait for the entity to get into desired state.

## Notes

Note

- In order to use this module you have to install oVirt Python SDK. To ensure it’s installed with correct version you can create the following task: pip: name=ovirt-engine-sdk-python version=4.3.0

## Examples

    # Examples don't contain auth parameter for simplicity,
    # look at ovirt_auth module to see how to reuse authentication:

    # Add new storage connection:
    - ovirt_storage_connection:
        storage: myiscsi
        address: 10.34.63.199
        target: iqn.2016-08-09.domain-01:nickname
        port: 3260
        type: iscsi

    # Update the existing storage connection address:
    - ovirt_storage_connection:
        id: 26915c96-92ff-47e5-9e77-b581db2f2d36
        address: 10.34.63.204
        force: true

    # Remove storage connection:
    - ovirt_storage_connection:
        id: 26915c96-92ff-47e5-9e77-b581db2f2d36

## Return Values

Common return values are documented here, the following are the fields unique to this module:

Key | Returned | Description
--- | --- | ---
id string | On success if storage connection is found. | ID of the storage connection which is managed Sample: 7de90f31-222c-436c-a1ca-7e655bd5b60c
storage_connection dictionary | On success if storage connection is found. | Dictionary of all the storage connection attributes. Storage connection attributes can be found on your oVirt instance at following url: https://ovirt.example.com/ovirt-engine/api/model#types/storage_connection.

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]

- This module is maintained by the Ansible Community. [community]

### Authors

- Ondra Machacek (@machacekondra)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.