{% include 'roles/sys-svc-compose/templates/base.yml.j2' %} {% set TAIGA_BACKEND_AUTH_BUILD_PROPS -%} build: context: "{{ compose_repository_path }}" dockerfile: Dockerfile.taiga-back {{ lookup('container_image', application_id, 'taiga', image=entity_name ~ '-back-auth', version=TAIGA_VERSION) }} {{ lookup('compose_only', 'pull_policy', 'never') }} {%- endset %} {% set service_name = TAIGA_SERVICE %} {{ service_name }}: {{ lookup('compose_only', 'container_name', TAIGA_CONTAINER) }} hostname: {{ TAIGA_HOSTNAME }} {% include 'roles/sys-svc-container/templates/base.yml.j2' %} {{ lookup('container_healthcheck', service_name) | indent(4) }} {% if TAIGA_PLUGINS_ENABLED | bool %} {{ TAIGA_BACKEND_AUTH_BUILD_PROPS | indent(4, true) }} entrypoint: ["/bin/sh", "-c"] command: - "if ! grep -qF {{ TAIGA_CONFIG_APPEND_MARKER | quote }} /taiga-back/settings/config.py; then cat {{ lookup('volume', 'web-app-taiga', 'config-append').target }} >> /taiga-back/settings/config.py; fi; exec /taiga-back/docker/entrypoint.sh" {% else %} {{ lookup('container_image', application_id, 'taiga', image='taigaio/taiga-back', version=TAIGA_VERSION) }} {% endif %} {{ lookup('container_volumes', service_name) | indent(4) }} {{ lookup('container_extra_hosts') | indent(4) }} {{ lookup('container_networks') | indent(4) }} taiga: {{ lookup('container_depends_on', application_id, extra={ TAIGA_EVENTS_RABBITMQ_SERVICE: {'condition': 'service_started'}, TAIGA_ASYNC_RABBITMQ_SERVICE: {'condition': 'service_started'}, }) | indent(4) }} {% set service_name = TAIGA_ASYNC_SERVICE %} {{ service_name }}: {{ lookup('compose_only', 'container_name', TAIGA_CONTAINER ~ '-' ~ service_name) }} {% include 'roles/sys-svc-container/templates/base.yml.j2' %} {{ lookup('container_healthcheck', service_name) | indent(4) }} {% if TAIGA_PLUGINS_ENABLED | bool %} {{ TAIGA_BACKEND_AUTH_BUILD_PROPS | indent(4, true) }} entrypoint: ["/bin/sh", "-c"] command: - "if ! grep -qF {{ TAIGA_CONFIG_APPEND_MARKER | quote }} /taiga-back/settings/config.py; then cat {{ lookup('volume', 'web-app-taiga', 'config-append').target }} >> /taiga-back/settings/config.py; fi; exec /taiga-back/docker/async_entrypoint.sh" {% else %} {{ lookup('container_image', application_id, 'async', image='taigaio/taiga-back', version=TAIGA_VERSION) }} entrypoint: ["/taiga-back/docker/async_entrypoint.sh"] {% endif %} {{ lookup('container_volumes', service_name) | indent(4) }} {{ lookup('container_extra_hosts') | indent(4) }} {{ lookup('container_networks') | indent(4) }} taiga: {{ lookup('container_depends_on', application_id, extra={ TAIGA_SERVICE: {'condition': 'service_started'}, TAIGA_EVENTS_RABBITMQ_SERVICE: {'condition': 'service_started'}, TAIGA_ASYNC_RABBITMQ_SERVICE: {'condition': 'service_started'}, }) | indent(4) }} {% set service_name = TAIGA_ASYNC_RABBITMQ_SERVICE %} {{ service_name }}: {{ lookup('compose_only', 'container_name', TAIGA_CONTAINER ~ '-' ~ service_name) }} {{ lookup('container_image', application_id, 'async-rabbitmq') }} hostname: "{{ TAIGA_ASYNC_RABBITMQ_SERVICE }}" {{ lookup('container_volumes', service_name) | indent(4) }} {% include 'roles/sys-svc-container/templates/base.yml.j2' %} {{ lookup('container_healthcheck', service_name) | indent(4) }} {{ lookup('container_extra_hosts') | indent(4) }} {{ lookup('container_networks') | indent(4) }} taiga: {% set service_name = TAIGA_FRONT_SERVICE %} {{ service_name }}: {{ lookup('compose_only', 'container_name', TAIGA_CONTAINER ~ '-' ~ service_name) }} {% if TAIGA_OIDC_ENABLED | bool %} build: context: "{{ compose_repository_path }}" dockerfile: Dockerfile.taiga-front {{ lookup('container_image', application_id, 'front', image=entity_name ~ '-front-oidc', version=TAIGA_VERSION) }} {{ lookup('compose_only', 'pull_policy', 'never') }} {% else %} {{ lookup('container_image', application_id, 'front', image='taigaio/taiga-front', version=TAIGA_VERSION) }} {% endif %} {% include 'roles/sys-svc-container/templates/base.yml.j2' %} {{ lookup('container_healthcheck', service_name) | indent(4) }} {{ lookup('container_volumes', service_name) | indent(4) }} {{ lookup('container_extra_hosts') | indent(4) }} {{ lookup('container_networks') | indent(4) }} taiga: {% set service_name = TAIGA_EVENTS_SERVICE %} {{ service_name }}: {{ lookup('compose_only', 'container_name', TAIGA_CONTAINER ~ '-' ~ service_name) }} {{ lookup('container_image', application_id, 'events') }} {% include 'roles/sys-svc-container/templates/base.yml.j2' %} {{ lookup('container_healthcheck', service_name) | indent(4) }} {{ lookup('container_extra_hosts') | indent(4) }} {{ lookup('container_networks') | indent(4) }} taiga: {{ lookup('depends_on', {TAIGA_EVENTS_RABBITMQ_SERVICE: 'service_started'}) }} {% set service_name = TAIGA_EVENTS_RABBITMQ_SERVICE %} {{ service_name }}: {{ lookup('compose_only', 'container_name', TAIGA_CONTAINER ~ '-' ~ service_name) }} {{ lookup('container_image', application_id, 'events-rabbitmq') }} hostname: {{ service_name }} {{ lookup('container_volumes', service_name) | indent(4) }} {% include 'roles/sys-svc-container/templates/base.yml.j2' %} {{ lookup('container_healthcheck', service_name) | indent(4) }} {{ lookup('container_extra_hosts') | indent(4) }} {{ lookup('container_networks') | indent(4) }} taiga: {% set service_name = TAIGA_PROTECTED_SERVICE %} {{ service_name }}: {{ lookup('compose_only', 'container_name', TAIGA_CONTAINER ~ '-' ~ service_name) }} {{ lookup('container_image', application_id, 'protected') }} {% include 'roles/sys-svc-container/templates/base.yml.j2' %} {{ lookup('container_healthcheck', service_name) | indent(4) }} {{ lookup('container_extra_hosts') | indent(4) }} {{ lookup('container_networks') | indent(4) }} taiga: {% set service_name = 'gateway' %} {{ service_name }}: {{ lookup('compose_only', 'container_name', TAIGA_CONTAINER ~ '-' ~ service_name) }} {{ lookup('container_image', application_id, 'gateway') }} {{ lookup('container_ports', ['taiga', 'http', DOCKER_BIND_HOST]) | indent(4) }} {{ lookup('container_volumes', service_name) | indent(4) }} {% include 'roles/sys-svc-container/templates/base.yml.j2' %} {{ lookup('container_healthcheck', service_name) | indent(4) }} {{ lookup('container_extra_hosts') | indent(4) }} {{ lookup('container_networks') | indent(4) }} taiga: {{ lookup('depends_on', [TAIGA_FRONT_SERVICE, TAIGA_SERVICE, TAIGA_EVENTS_SERVICE]) }} {% set service_name = TAIGA_MANAGER_SERVICE %} {{ service_name }}: {{ lookup('compose_only', 'container_name', TAIGA_MANAGER_CONTAINER) }} {% include 'roles/sys-svc-container/templates/base.yml.j2' %} {{ lookup('container_image', application_id, 'manager', image='taigaio/taiga-back', version=TAIGA_VERSION) }} environment: CELERY_ENABLED: "False" entrypoint: ["sleep", "infinity"] {{ lookup('container_depends_on', application_id, extra={ TAIGA_SERVICE: {'condition': 'service_started'}, }) | indent(4) }} {{ lookup('container_volumes', service_name) | indent(4) }} {{ lookup('container_extra_hosts') | indent(4) }} {{ lookup('container_networks') | indent(4) }} taiga: {{ lookup('compose_volumes') }} {{ lookup('compose_networks') }} taiga: