diff --git a/roles/service/tasks/additional.yaml b/roles/service/tasks/additional.yaml index d20465c..406b15c 100644 --- a/roles/service/tasks/additional.yaml +++ b/roles/service/tasks/additional.yaml @@ -10,7 +10,7 @@ container_user: "{{ service_container_user }}" container_mounts: "{{ _service_additional_container_mounts }}" container_publish_ports: "{{ _service_additional_container_publish_ports }}" - container_networks: "{{ _service_container_networks }}" + container_networks: "{{ _service_additional_container_networks }}" container_ip: "{{ _service_additional_container_ip }}" container_secrets: "{{ _service_additional_container.secrets | default(_service_container_secrets) }}" container_hostname: "{{ _service_additional_container.name | regex_replace('^' ~ service_name ~ '-', '') }}" diff --git a/roles/service/vars/main/additional.yaml b/roles/service/vars/main/additional.yaml index 9c1f5c5..d317e93 100644 --- a/roles/service/vars/main/additional.yaml +++ b/roles/service/vars/main/additional.yaml @@ -11,6 +11,19 @@ _service_additional_containers: >- | map('combine') }} +_service_additional_container_networks: >- + {{ + [service_name] + + [_service_additional_container.name] + + service_container_additional_networks + + ( + _service_additional_container_publish_socket_ports + | map(attribute='name') + | map('regex_replace', '^', service_name ~ '-') + | map('regex_replace', '$', '-socat') + ) + }} + _service_additional_container_ip: >- {{ service_container_ip | diff --git a/roles/service/vars/main/general.yaml b/roles/service/vars/main/general.yaml index 00ab459..3f77e00 100644 --- a/roles/service/vars/main/general.yaml +++ b/roles/service/vars/main/general.yaml @@ -1,5 +1,12 @@ --- -_service_container_networks: "{{ [service_name] + service_container_additional_networks }}" +_service_container_networks: >- + {{ + [service_name] + + service_container_additional_networks + + ([service_name ~ '-socat'] if service_container_http_port > 0 else []) + + (_service_container_publish_socket_ports | map(attribute='name') | map('regex_replace', '^', service_name ~ '-')) + + (_service_additional_containers | map(attribute='name')) + }} _service_static_ip: "{{ service_container_ip | length > 0 }}" _service_container_requires: >-