From f6af1d34726975d6a0b2da4d42ccf8633a49978e Mon Sep 17 00:00:00 2001 From: uumas Date: Thu, 12 Mar 2026 00:16:11 +0200 Subject: [PATCH] service: Make supporting containers accessible using simple hostnames --- roles/service/meta/argument_specs.yaml | 9 ++++----- roles/service/tasks/additional.yaml | 1 + roles/service/tasks/database.yaml | 1 + roles/service/tasks/redis.yaml | 1 + 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/roles/service/meta/argument_specs.yaml b/roles/service/meta/argument_specs.yaml index 3da484b..e9d1f6f 100644 --- a/roles/service/meta/argument_specs.yaml +++ b/roles/service/meta/argument_specs.yaml @@ -244,9 +244,9 @@ argument_specs: - Database type to set up. - > It will be run in a container accessible to the service at - host {{ service_name }}-{{ service_database_type }} on the default port. - - The database user will be {{ service_name }} - - The password will be accessible as secret at /run/secrets/{{ service_database_type }} + host on the default port. + - The database user will be + - The password will be accessible as secret at /run/secrets/ - > The password will also be available as the service_podman_secrets['{{ service_name }}-{{ service_database_type }}'] variable. @@ -293,8 +293,7 @@ argument_specs: required: false service_redis: description: >- - Whether to install redis in a container accessible to the service at host - {{ service_name }}-redis. + Whether to install redis in a container accessible to the service at host redis. type: bool required: false default: false diff --git a/roles/service/tasks/additional.yaml b/roles/service/tasks/additional.yaml index eb87dd7..1bcf9ca 100644 --- a/roles/service/tasks/additional.yaml +++ b/roles/service/tasks/additional.yaml @@ -13,6 +13,7 @@ container_networks: "{{ _service_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 ~ '-', '') }}" container_env: "{{ _service_additional_container.env | default(service_container_env) }}" container_requires: "{{ _service_container_requires }}" container_wants: "{{ service_wants }}" diff --git a/roles/service/tasks/database.yaml b/roles/service/tasks/database.yaml index 624b1b7..6628839 100644 --- a/roles/service/tasks/database.yaml +++ b/roles/service/tasks/database.yaml @@ -14,6 +14,7 @@ source: "{{ _service_database_name }}" destination: "{{ _service_database_mount_destination }}" container_networks: "{{ _service_database_networks }}" + container_hostname: "{{ service_database_type }}" container_ip: >- {{ service_container_ip | ansible.utils.ipmath(1) if _service_static_ip else '' }} container_secrets: diff --git a/roles/service/tasks/redis.yaml b/roles/service/tasks/redis.yaml index fb10dfd..5aa63b4 100644 --- a/roles/service/tasks/redis.yaml +++ b/roles/service/tasks/redis.yaml @@ -7,6 +7,7 @@ container_image: docker.io/valkey/valkey:alpine container_networks: - "{{ service_name }}" + container_hostname: redis container_ip: >- {{ service_container_ip | ansible.utils.ipmath(2) if _service_static_ip else '' }} container_auto_update: "{{ service_auto_update }}"