volume: Support device-based volumes
Also support those options in container and service roles
This commit is contained in:
@@ -48,7 +48,7 @@ argument_specs:
|
||||
elements: dict
|
||||
options:
|
||||
type:
|
||||
description: Type of volume
|
||||
description: Type of mount
|
||||
type: str
|
||||
required: true
|
||||
choices:
|
||||
@@ -80,6 +80,28 @@ argument_specs:
|
||||
type: str
|
||||
required: false
|
||||
default: ""
|
||||
volume_device:
|
||||
description: >-
|
||||
The path of a device which is mounted for the volume.
|
||||
Only applicable if mount type is volume.
|
||||
type: str
|
||||
required: false
|
||||
default: ""
|
||||
volume_type:
|
||||
description: >-
|
||||
The filesystem type of device as used by the mount commands -t option
|
||||
Only applicable if mount type is volume.
|
||||
type: str
|
||||
required: false
|
||||
default: ""
|
||||
volume_mount_options:
|
||||
description: >-
|
||||
The mount options to use for a filesystem as used by the mount command -o option
|
||||
Only applicable if mount type is volume.
|
||||
type: list
|
||||
elements: str
|
||||
required: false
|
||||
default: []
|
||||
|
||||
container_publish_ports:
|
||||
description: "A list of published ports in docker format (<host listen address>:<host port>:<container port>)"
|
||||
|
||||
@@ -27,6 +27,9 @@
|
||||
volume_name: "{{ volume.source }}"
|
||||
volume_uid: "{{ volume.user | default('') }}"
|
||||
volume_gid: "{{ volume.group | default('') }}"
|
||||
volume_type: "{{ volume.volume_type | default('') }}"
|
||||
volume_device: "{{ volume.volume_device | default('') }}"
|
||||
volume_mount_options: "{{ volume.volume_mount_options | default([]) }}"
|
||||
loop: "{{ _container_volumes }}"
|
||||
loop_control:
|
||||
loop_var: volume
|
||||
|
||||
@@ -18,7 +18,7 @@ _container_mounts: >-
|
||||
{{
|
||||
container_mounts | selectattr('type', '!=', 'volume') +
|
||||
container_mounts | selectattr('type', '==', 'volume')
|
||||
| community.general.remove_keys(['user', 'group'])
|
||||
| community.general.keep_keys(['type', 'source', 'destination', 'readonly'])
|
||||
| zip(_container_volume_mount_sources) | map('combine')
|
||||
}}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user