diff --git a/roles/container/defaults/main.yaml b/roles/container/defaults/main.yaml index eb333ff..f6c921a 100644 --- a/roles/container/defaults/main.yaml +++ b/roles/container/defaults/main.yaml @@ -6,6 +6,7 @@ container_mounts: [] container_devices: [] container_publish_ports: [] container_networks: [] +container_hostname: "" container_ip: "" container_secrets: [] container_env: {} diff --git a/roles/container/meta/argument_specs.yaml b/roles/container/meta/argument_specs.yaml index c322cc4..5eba2f3 100644 --- a/roles/container/meta/argument_specs.yaml +++ b/roles/container/meta/argument_specs.yaml @@ -119,11 +119,17 @@ argument_specs: required: false default: [] elements: str + container_hostname: + description: Hostname to set inside the container. Available to other containers on the same network. + type: str + required: false + default: "" container_ip: description: IPv4 address for the container in the first network defined in container_networks type: str required: false default: "" + container_secrets: description: A list of secrets available to the container as file or environment variable type: list diff --git a/roles/container/tasks/main.yaml b/roles/container/tasks/main.yaml index 5a8c3d9..732f84c 100644 --- a/roles/container/tasks/main.yaml +++ b/roles/container/tasks/main.yaml @@ -50,6 +50,7 @@ mount: "{{ _container_mounts | map('items') | map('map', 'join', '=') | map('join', ',') }}" device: "{{ _container_devices }}" network: "{{ _container_networks_with_ip }}" + hostname: "{{ container_hostname or omit }}" publish: "{{ container_publish_ports }}" secrets: "{{ _container_secrets }}" env: "{{ container_env }}"