services.ymlΒΆ

---
# nocheck: dynamic-flag
# nocheck: sso
sso:
  enabled: false
  shared: false
# nocheck: dynamic-flag
# nocheck: logout
logout:
  enabled: false
  shared: false
# nocheck: dynamic-flag
dashboard:
  enabled: false
  shared: false
# nocheck: dynamic-flag
matomo:
  enabled: false
  shared: false
# nocheck: dynamic-flag
# nocheck: playwright-service-flag β€” design consumer, no Playwright surface (provider: web-svc-design)
# nocheck: design-off  Reason: serves JSON only, so there is no HTML surface the shared stylesheet could reach
design:
  enabled: false
  shared: false
# nocheck: email
# nocheck: dynamic-flag
email:
  enabled: false
  shared: false
# nocheck: playwright-service-flag β€” self-provider
api:
  modes:
    compose:
      enabled: true
    swarm:
      enabled: true
  bond: 1
  enabled: true
  shared: true
  image: python
  version: 3.13-slim
  custom: true
  name: api
  source_repository: "{{ SOFTWARE_REPOSITORY }}"
  forks: auto
  fetch_interval: 900
  # nocheck: min-storage-headroom  Reason: the image built on the python base (1.1 GB) and the bare repository of core and its forks (about 300 MB)
  min_storage: 2GB
  backup:
    stop_required: false
  ports:
    internal:
      http: 8000
    local:
      http: 8098
  healthcheck:
    flavor: http_status
  lifecycle: alpha
  cpus: "1"
  mem_reservation: 256m
  mem_limit: 1g
  pids_limit: 256
prometheus:
  bond: 1
  enabled: "{{ 'web-app-prometheus' in group_names }}"
  shared: "{{ 'web-app-prometheus' in group_names }}"

# nocheck: playwright-service-flag
# nocheck: variants-coverage β€” sso-variant-tor requires the onion on in every variant, so the false polarity has no variant left to live in
tor:
  bond: 0.5
  enabled: "{{ 'svc-net-tor' in group_names }}"
  shared: true # nocheck: dynamic-flag

docs:
  bond: 0.5
  enabled: "{{ 'web-app-docs' in group_names }}"
  shared: "{{ 'web-app-docs' in group_names }}"