--- application_id: "web-app-openproject" entity_name: "{{ application_id | get_entity_name }}" OPENPROJECT_VERSION: "{{ lookup('config', application_id, 'services.web.version') }}" OPENPROJECT_IMAGE: "{{ lookup('config', application_id, 'services.web.image') }}" OPENPROJECT_REPOSITORY: "{{ lookup('config', 'web-app-openproject', 'services.openproject.repository') }}" OPENPROJECT_REF: "{{ lookup('config', 'web-app-openproject', 'services.openproject.ref') }}" OPENPROJECT_WEB_SERVICE: "web" OPENPROJECT_WEB_CONTAINER: "{{ lookup('config', application_id, 'services.' ~ OPENPROJECT_WEB_SERVICE ~ '.name') }}" OPENPROJECT_WEB_CONTAINER_ADDRESS: "{{ lookup('container_address', application_id, OPENPROJECT_WEB_SERVICE) }}" OPENPROJECT_MIGRATION_WAIT_SECONDS: 600 OPENPROJECT_MIGRATION_POLL_SECONDS: 10 OPENPROJECT_AWAIT_MIGRATIONS_ABS: "{{ [ lookup('container', application_id, 'directories.config'), 'await_migrations.sh'] | path_join }}" OPENPROJECT_AWAIT_MIGRATIONS_TARGET: "{{ (lookup('volume', application_id, 'await_migrations').mounts | first).target }}" OPENPROJECT_SEEDER_SERVICE: "seeder" OPENPROJECT_SEEDER_CONTAINER: "{{ lookup('config', application_id, 'services.' ~ OPENPROJECT_SEEDER_SERVICE ~ '.name') }}" OPENPROJECT_CRON_CONTAINER: "{{ lookup('config', application_id, 'services.cron.name') }}" OPENPROJECT_PROXY_CONTAINER: "{{ lookup('config', application_id, 'services.proxy.name') }}" OPENPROJECT_WORKER_CONTAINER: "{{ lookup('config', application_id, 'services.worker.name') }}" OPENPROJECT_ADMINISTRATOR_USERNAME: "{{ lookup('users', 'administrator').username }}" OPENPROJECT_ADMINISTRATOR_PASSWORD: "{{ lookup('users', 'administrator').password }}" OPENPROJECT_ADMINISTRATOR_EMAIL: "{{ lookup('users', 'administrator').email }}" OPENPROJECT_CACHE_CONTAINER: "{{ lookup('config', application_id, 'services.cache.name') }}" OPENPROJECT_PLUGINS_FOLDER: "{{ lookup('container', application_id, 'directories.volumes') }}plugins/" OPENPROJECT_DUMMY_DIR: "{{ lookup('container', application_id, 'directories.volumes') }}dummy_volume" OPENPROJECT_EMAIL: "{{ lookup('email', application_id) }}" OPENPROJECT_RAILS_SETTINGS: email_delivery_method: "smtp" smtp_address: "{{ OPENPROJECT_EMAIL.host }}" smtp_domain: "{{ OPENPROJECT_EMAIL.domain }}" smtp_user_name: "{{ OPENPROJECT_EMAIL.username }}" smtp_password: "{{ OPENPROJECT_EMAIL.password }}" smtp_ssl: false OPENPROJECT_SSO_PROXY_GATED: "{{ lookup('sso', application_id, 'is_proxy_gated') }}" OPENPROJECT_SSO_HEADER: "X-Remote-User" OPENPROJECT_SSO_SECRET: "{{ lookup('config', application_id, 'secrets.credentials.auth_source_sso_secret') }}" OPENPROJECT_SSO_LOGOUT_URL: "{{ lookup('tls', 'web-svc-logout', 'url.base') if (lookup('config', application_id, 'services.logout.enabled') | bool) else '' }}" OPENPROJECT_HEADER_SSO_ENABLED: "{{ (OPENPROJECT_SSO_PROXY_GATED | bool) and (OPENPROJECT_LDAP_ENABLED | bool) }}" OPENPROJECT_LDAP_ENABLED: "{{ lookup('config', application_id, 'services.ldap.enabled') }}" OPENPROJECT_LDAP_FILTER_ADMINISTRATORS_ENABLED: "{{ lookup('config', application_id, 'services.openproject.ldap.filters.administrators') }}" OPENPROJECT_LDAP_FILTER_USERS_ENABLED: "{{ lookup('config', application_id, 'services.openproject.ldap.filters.users') }}" OPENPROJECT_LDAP_FILTERS: ADMINISTRATORS: "{{ '(memberOf=cn=openproject-admins,' ~ LDAP.DN.OU.ROLES ~ ')' if OPENPROJECT_LDAP_FILTER_ADMINISTRATORS_ENABLED | bool else '' }}" USERS: "{{ '(memberOf=cn=openproject-users,' ~ LDAP.DN.OU.ROLES ~ ')' if OPENPROJECT_LDAP_FILTER_USERS_ENABLED | bool else '' }}" OPENPROJECT_DB_POOL: "{{ [POSTGRES_ALLOWED_AVG_CONNECTIONS | int, 20] | min }}" OPENPROJECT_RAILS_MAX_THREADS: "{{ [POSTGRES_ALLOWED_AVG_CONNECTIONS | int, 20] | min }}"