main.ymlΒΆ

---
application_id: "web-app-checkmk"
container_port: "{{ lookup('config', application_id, 'services.checkmk.ports.internal.http') }}"

CHECKMK_NAME: "{{ lookup('config', application_id, 'services.checkmk.name') }}"
CHECKMK_SITE: "{{ lookup('config', application_id, 'services.checkmk.site') }}"

CHECKMK_ADMIN_PASSWORD: "{{ lookup('config', application_id, 'secrets.credentials.cmk_password') }}"

CHECKMK_VERSION: "{{ lookup('config', application_id, 'services.checkmk.version') }}"
CHECKMK_SITE_DIR: "{{ [lookup('volume', application_id, 'checkmk_data').target, CHECKMK_SITE] | path_join }}"
CHECKMK_THEMES_DIR: "{{ [CHECKMK_SITE_DIR, 'share/check_mk/web/htdocs/themes'] | path_join }}"
CHECKMK_DESIGN_ENABLED: "{{ lookup('config', application_id, 'services.design.enabled') | bool }}"
CHECKMK_DESIGN_LOGO_ENABLED: "{{ CHECKMK_DESIGN_ENABLED | bool and lookup('design', application_id).logo is string }}"
CHECKMK_DESIGN_THEME: "corporate"
CHECKMK_DESIGN_THEME_TITLE: "Corporate"
CHECKMK_DESIGN_THEME_LIGHT: "facelift"
CHECKMK_DESIGN_THEME_DARK: "modern-dark"
CHECKMK_DESIGN_THEME_DIR: "{{ [CHECKMK_SITE_DIR, 'local/share/check_mk/web/htdocs/themes', CHECKMK_DESIGN_THEME] | path_join }}"
CHECKMK_DESIGN_THEME_MARKER: "{{ [CHECKMK_DESIGN_THEME_DIR, 'theme.json'] | path_join }}"
CHECKMK_DESIGN_CONFIG: "{{ [CHECKMK_SITE_DIR, 'etc/check_mk/multisite.d/infinito_design.mk'] | path_join }}"
CHECKMK_DESIGN_DARK_ICON_DIR: "{{ [CHECKMK_THEMES_DIR, CHECKMK_DESIGN_THEME_DARK, 'images'] | path_join }}"
CHECKMK_DESIGN_BUILTIN_FAVICON: "{{ [CHECKMK_THEMES_DIR, CHECKMK_DESIGN_THEME_LIGHT, 'images/favicon.ico'] | path_join }}"
CHECKMK_DESIGN_IMAGES:
  checkmk_logo.svg: "brand.svg"
  icon_checkmk_logo.svg: "icon.svg"
  icon_checkmk_logo_min.svg: "icon.svg"
  favicon.ico: "favicon.ico"

CHECKMK_SSO_ENABLED: "{{ lookup('config', application_id, 'services.sso.enabled') }}"
CHECKMK_LDAP_ENABLED: "{{ lookup('config', application_id, 'services.ldap.enabled') }}"

CHECKMK_LDAP_SERVER: "{{ LDAP.SERVER.DOMAIN }}"
CHECKMK_LDAP_PORT: "{{ LDAP.SERVER.PORT }}"
CHECKMK_LDAP_BIND_DN: "{{ LDAP.DN.ADMINISTRATOR.DATA }}"
CHECKMK_LDAP_BIND_PASSWORD: "{{ LDAP.BIND_CREDENTIAL }}"
CHECKMK_LDAP_USER_DN: "{{ LDAP.DN.OU.USERS }}"
CHECKMK_LDAP_GROUP_DN: "{{ LDAP.DN.OU.GROUPS }}"
CHECKMK_LDAP_USER_ID_ATTR: "{{ LDAP.USER.ATTRIBUTES.ID }}"
CHECKMK_MCP_ENABLED: "{{ lookup('config', application_id, 'services.checkmkmcp.enabled') | bool }}"
CHECKMK_MCP_SERVICE_KEY: "checkmkmcp"
CHECKMK_MCP_CONTAINER: "{{ lookup('config', application_id, 'services.checkmkmcp.name') }}"
CHECKMK_MCP_PORT: "{{ lookup('config', application_id, 'services.checkmkmcp.ports.internal.http') }}"
CHECKMK_MCP_BEARER: "{{ lookup('config', application_id, 'secrets.credentials.mcp_bearer') }}"
CHECKMK_MCP_INSTANCE_DIR: "{{ [lookup('container', application_id, 'directories.instance'), 'mcp'] | path_join }}"
CHECKMK_MCP_UPSTREAM_HOST: "{{ lookup('config', application_id, 'services.checkmk.name') }}"
CHECKMK_MCP_UPSTREAM_PORT: "{{ lookup('config', application_id, 'services.checkmk.ports.internal.http') }}"
CHECKMK_MCP_UPSTREAM_URL: "http://{{ CHECKMK_MCP_UPSTREAM_HOST }}:{{ CHECKMK_MCP_UPSTREAM_PORT }}/{{ CHECKMK_SITE }}/check_mk/api/1.0"
CHECKMK_MCP_CONTRACT:
  provider: "{{ application_id }}"
  upstream_url: "{{ CHECKMK_MCP_UPSTREAM_URL }}"
  auth_subject: "{{ lookup('config', application_id, 'mcp.auth_subject') }}"
  mutating_tools_enabled: "{{ lookup('config', application_id, 'mcp.tools.mutating_tools_enabled') | bool }}"
  tools: "{{ lookup('file', 'mcp/tools.json') | from_json }}"
  limits: "{{ lookup('config', application_id, 'mcp.limits') }}"
  schema_sha256: "{{ lookup('config', application_id, 'mcp.tools.schema_sha256') }}"
CHECKMK_MCP_UPSTREAM_KEY: "{{ lookup('config', application_id, 'secrets.credentials.mcp_upstream_token') }}"
CHECKMK_MCP_UPSTREAM_USER: "mcpreader"
CHECKMK_MCP_UPSTREAM_AUTH_HEADER: "Authorization"
CHECKMK_MCP_UPSTREAM_AUTH_FORMAT: "Bearer {{ CHECKMK_MCP_UPSTREAM_USER }} {key}"