Files
matrix-docker-ansible-deploy/roles/custom/matrix-cactus-comments-client/defaults/main.yml
Slavi Pantaleev 0d86610cbe Add conditional restart support to service roles
Track config/image/systemd changes via register: directives and compute
a _restart_necessary variable for each service role, allowing the
systemd_service_manager to skip unnecessary restarts during install-* runs.

Covers 22 service roles: alertmanager-receiver, appservice-draupnir-for-all,
bridge-mautrix-wsproxy (+ syncproxy), cactus-comments, cactus-comments-client,
corporal, element-admin, ldap-registration-proxy, livekit-jwt-service, matrixto,
pantalaimon, prometheus-nginxlog-exporter, rageshake, registration, static-files,
sygnal, synapse-admin, synapse-auto-compressor, synapse-reverse-proxy-companion,
synapse-usage-exporter, and user-verification-service.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 16:01:46 +02:00

121 lines
8.0 KiB
YAML

# SPDX-FileCopyrightText: 2024 - 2025 Slavi Pantaleev
# SPDX-FileCopyrightText: 2024 Suguru Hirahara
#
# SPDX-License-Identifier: AGPL-3.0-or-later
---
# Cactus Comments is a federated comment system built on Matrix.
# This role installs the client assets (JS, CSS files).
# Project source code URL: https://gitlab.com/cactus-comments/cactus-client
matrix_cactus_comments_client_enabled: true
matrix_cactus_comments_client_hostname: ''
matrix_cactus_comments_client_path_prefix: /cactus-comments
matrix_cactus_comments_client_base_path: "{{ matrix_base_data_path }}/cactus-comments-client"
matrix_cactus_comments_client_public_path: "{{ matrix_cactus_comments_client_base_path }}/public"
matrix_cactus_comments_client_public_path_file_permissions: "0644"
# renovate: datasource=docker depName=joseluisq/static-web-server
matrix_cactus_comments_client_version: 2.40.1
matrix_cactus_comments_client_container_image: "{{ matrix_cactus_comments_client_container_image_registry_prefix }}joseluisq/static-web-server:{{ matrix_cactus_comments_client_container_image_tag }}"
matrix_cactus_comments_client_container_image_registry_prefix: "{{ matrix_cactus_comments_client_container_image_registry_prefix_upstream }}"
matrix_cactus_comments_client_container_image_registry_prefix_upstream: "{{ matrix_cactus_comments_client_container_image_registry_prefix_upstream_default }}"
matrix_cactus_comments_client_container_image_registry_prefix_upstream_default: docker.io/
matrix_cactus_comments_client_container_image_tag: "{{ 'latest' if matrix_cactus_comments_client_version == 'latest' else (matrix_cactus_comments_client_version + '-alpine') }}"
matrix_cactus_comments_client_container_image_force_pull: "{{ matrix_cactus_comments_client_container_image.endswith(':latest') }}"
matrix_cactus_comments_client_container_network: ""
matrix_cactus_comments_client_container_additional_networks: "{{ matrix_cactus_comments_client_container_additional_networks_auto + matrix_cactus_comments_client_container_additional_networks_custom }}"
matrix_cactus_comments_client_container_additional_networks_auto: []
matrix_cactus_comments_client_container_additional_networks_custom: []
# Controls whether the matrix-cactus-comments-client container exposes its HTTP port (tcp/8080 in the container).
#
# Takes an "<ip>:<port>" or "<port>" value (e.g. "127.0.0.1:8080"), or empty string to not expose.
matrix_cactus_comments_client_container_http_host_bind_port: ''
# matrix_cactus_comments_client_container_labels_traefik_enabled controls whether labels to assist a Traefik reverse-proxy will be attached to the container.
# See `../templates/labels.j2` for details.
#
# To inject your own other container labels, see `matrix_cactus_comments_client_container_labels_additional_labels`.
matrix_cactus_comments_client_container_labels_traefik_enabled: true
matrix_cactus_comments_client_container_labels_traefik_docker_network: "{{ matrix_cactus_comments_client_container_network }}"
matrix_cactus_comments_client_container_labels_traefik_entrypoints: web-secure
matrix_cactus_comments_client_container_labels_traefik_tls_certResolver: default # noqa var-naming
# Controls whether labels will be added that serve the /public directory.
matrix_cactus_comments_client_container_labels_public_enabled: true
matrix_cactus_comments_client_container_labels_public_traefik_hostname: "{{ matrix_cactus_comments_client_hostname }}"
matrix_cactus_comments_client_container_labels_public_traefik_path_prefix: "{{ matrix_cactus_comments_client_path_prefix }}"
matrix_cactus_comments_client_container_labels_public_traefik_rule: "Host(`{{ matrix_cactus_comments_client_container_labels_public_traefik_hostname }}`){% if matrix_cactus_comments_client_container_labels_public_traefik_path_prefix != '/' %} && PathPrefix(`{{ matrix_cactus_comments_client_container_labels_public_traefik_path_prefix }}`){% endif %}"
matrix_cactus_comments_client_container_labels_public_traefik_priority: 0
matrix_cactus_comments_client_container_labels_public_traefik_entrypoints: "{{ matrix_cactus_comments_client_container_labels_traefik_entrypoints }}"
matrix_cactus_comments_client_container_labels_public_traefik_tls: "{{ matrix_cactus_comments_client_container_labels_public_traefik_entrypoints != 'web' }}"
matrix_cactus_comments_client_container_labels_public_traefik_tls_certResolver: "{{ matrix_cactus_comments_client_container_labels_traefik_tls_certResolver }}" # noqa var-naming
# matrix_cactus_comments_client_container_labels_additional_labels contains a multiline string with additional labels to add to the container label file.
# See `../templates/labels.j2` for details.
#
# Example:
# matrix_cactus_comments_client_container_labels_additional_labels: |
# my.label=1
# another.label="here"
matrix_cactus_comments_client_container_labels_additional_labels: ''
# A list of extra arguments to pass to the container
matrix_cactus_comments_client_container_extra_arguments: []
# Controls the SERVER_PORT environment variable.
# See: https://static-web-server.net/configuration/environment-variables/
matrix_cactus_comments_client_environment_variable_server_port: 8080
# Controls the SERVER_LOG_LEVEL environment variable.
# See: https://static-web-server.net/configuration/environment-variables/
# Valid values: error, warn, info, debug, trace
matrix_cactus_comments_client_environment_variable_server_log_level: error
# Controls the SERVER_LOG_REMOTE_ADDRESS environment variable.
# See: https://static-web-server.net/configuration/environment-variables/
matrix_cactus_comments_client_environment_variable_server_log_remote_address: false
# Controls the SERVER_CONFIG_FILE environment variable.
# See: https://static-web-server.net/configuration/environment-variables/
matrix_cactus_comments_client_environment_variable_server_config_file: /config/config.toml
# Additional environment variables.
matrix_cactus_comments_client_environment_variables_additional_variables: ''
# The released & compiled client is uploaded to a URL that changes per commit. Therefore it is necessary to check the
# available versions and adjust the url manually.
# For available versions, see: https://gitlab.com/cactus-comments/cactus-client/-/releases
# Also see: `matrix_cactus_comments_client_local_dir`
matrix_cactus_comments_client_webclient_js_url: "https://gateway.pinata.cloud/ipfs/QmSiWN27KZZ1XE32jKwifBnS3nWTUcFGNArKzur2nmDgoL/v0.13.0/cactus.js"
matrix_cactus_comments_client_webclient_css_url: "https://gateway.pinata.cloud/ipfs/QmSiWN27KZZ1XE32jKwifBnS3nWTUcFGNArKzur2nmDgoL/v0.13.0/style.css"
# matrix_cactus_comments_client_local_dir specifies a local directory (on the Ansible controller, not on the remote server) with cactus-client files to use.
# This is an alternative to `matrix_cactus_comments_client_client_version`, to be used when you'd like to
# provide the files locally / manually.
matrix_cactus_comments_client_local_dir: ''
# List of systemd services that matrix-cactus-comments-client.service depends on
matrix_cactus_comments_client_systemd_required_services_list: "{{ [devture_systemd_docker_base_docker_service_name] if devture_systemd_docker_base_docker_service_name else [] }}"
# List of systemd services that matrix-cactus-comments-client.service wants
matrix_cactus_comments_client_systemd_wanted_services_list: "{{ matrix_cactus_comments_client_systemd_wanted_services_list_auto + matrix_cactus_comments_client_systemd_wanted_services_list_custom }}"
matrix_cactus_comments_client_systemd_wanted_services_list_auto: []
matrix_cactus_comments_client_systemd_wanted_services_list_custom: []
# matrix_cactus_comments_client_restart_necessary controls whether the service
# will be restarted (when true) or merely started (when false) by the
# systemd service manager role (when conditional restart is enabled).
#
# This value is automatically computed during installation based on whether
# any configuration files, the systemd service file, or the container image changed.
# The default of `false` means "no restart needed" — appropriate when the role's
# installation tasks haven't run (e.g., due to --tags skipping them).
matrix_cactus_comments_client_restart_necessary: false