ansible-infra/ansible_collections/debops/debops/roles/rabbitmq_management/defaults/main.yml
Stefan Bethke 2aed20393f
Some checks failed
/ Ansible Lint (push) Failing after 5m45s
/ Ansible Lint (pull_request) Failing after 4m59s
Vendor Galaxy Roles and Collections
2026-02-06 22:07:16 +01:00

187 lines
7.5 KiB
YAML

---
# .. vim: foldmarker=[[[,]]]:foldmethod=marker
# .. Copyright (C) 2017 Maciej Delmanowski <drybjed@gmail.com>
# .. Copyright (C) 2017 DebOps <https://debops.org/>
# .. SPDX-License-Identifier: GPL-3.0-only
# .. _rabbitmq_management__ref_defaults:
# debops.rabbitmq_management default variables [[[
# ================================================
# .. contents:: Sections
# :local:
#
# .. include:: ../../../../includes/global.rst
# Basic configuration [[[
# -----------------------
# .. envvar:: rabbitmq_management__local [[[
#
# Enable or disable configuration of the RabbitMQ Management Console on a given
# host. Other services like :command:`nginx` will still be configured if this
# variable is set to ``False``, the role just assumes that the Management
# Console is on a different host.
rabbitmq_management__local: True
# ]]]
# .. envvar:: rabbitmq_management__deploy_state [[[
#
# If ``present``, RabbitMQ Management Console will be configured on a given
# host. If ``absent``, the RabbitMQ Management Console will be uninstalled.
rabbitmq_management__deploy_state: 'present'
# ]]]
# .. envvar:: rabbitmq_management__fqdn [[[
#
# The Fully Qualified Domain Name address on which the RabbitMQ Management
# Console will be accessible.
rabbitmq_management__fqdn: 'rabbitmq.{{ rabbitmq_management__domain }}'
# ]]]
# .. envvar:: rabbitmq_management__domain [[[
#
# The DNS domain used by default to configure the main application FQDN.
rabbitmq_management__domain: '{{ ansible_domain }}'
# ]]]
# .. envvar:: rabbitmq_management__webserver_allow [[[
#
# List of IP addresses or CIDR subnets which will be permitted to access the
# RabbitMQ Management Console web interface. If the list is empty, anybody can
# access the service.
rabbitmq_management__webserver_allow: []
# ]]]
# ]]]
# RabbitMQ plugins [[[
# --------------------
# .. envvar:: rabbitmq_management__default_plugins [[[
#
# List of default RabbitMQ plugins to enable.
rabbitmq_management__default_plugins: [ 'rabbitmq_management' ]
# ]]]
# .. envvar:: rabbitmq_management__plugins [[[
#
# List of additional RabbitMQ plugins to enable.
rabbitmq_management__plugins: []
# ]]]
# ]]]
# Backend plugin configuration [[[
# --------------------------------
# .. envvar:: rabbitmq_management__app_port [[[
#
# The TCP port used by the RabbitMQ Management Console plugin.
rabbitmq_management__app_port: '15672'
# ]]]
# .. envvar:: rabbitmq_management__app_bind [[[
#
# The interface to which the plugin will be bound. Keep in mind that the
# Management Console needs to be accessed over an interface different than the
# ``localhost``, otherwise the ``loopback_users`` RabbitMQ configuration option
# will not work. A firewall is very useful to protect the external TCP port.
#
# With the default configuration, the plugin will listen on both IPv4 and IPv6
# networks.
rabbitmq_management__app_bind: '::'
# ]]]
# .. envvar:: rabbitmq_management__app_host [[[
#
# The FQDN address on which the plugin will be accessed by the reverse proxy
# (:command:`nginx`). By default it's the host's own FQDN.
rabbitmq_management__app_host: '{{ ansible_fqdn }}'
# ]]]
# .. envvar:: rabbitmq_management__app_protocol [[[
#
# The HTTP protocol to use to contact the backend service. If the service is
# installed locally, ``http://`` is used by default, else the ``https://`` is
# assumed as default.
rabbitmq_management__app_protocol: '{{ "http"
if rabbitmq_management__local | bool
else "https" }}'
# ]]]
# ]]]
# RabbitMQ main configuration [[[
# -------------------------------
# .. envvar:: rabbitmq_management__default_config [[[
#
# Default configuration options for the RabbitMQ Management Console. See the
# documentation of the ``debops.rabbitmq_server`` Ansible role for more
# details.
rabbitmq_management__default_config:
- name: 'rabbitmq_management'
state: '{{ rabbitmq_management__deploy_state }}'
options:
- name: 'listener'
value: |
[{port, {{ rabbitmq_management__app_port + '}' }},
{ip, "{{ rabbitmq_management__app_bind }}"}]
comment: |
Communication with the Management Console is done using
a reverse proxy at 'https://{{ rabbitmq_management__fqdn }}/'
type: 'raw'
# ]]]
# .. envvar:: rabbitmq_management__config [[[
#
# Additional configuration options set in the RabbitMQ configuration file.
rabbitmq_management__config: []
# ]]]
# ]]]
# Configuration for other Ansible roles [[[
# -----------------------------------------
# .. envvar:: rabbitmq_management__etc_services__dependent_list [[[
#
# Configuration for the :ref:`debops.etc_services` Ansible role.
rabbitmq_management__etc_services__dependent_list:
- name: 'rabbitmq-mgmt'
port: '{{ rabbitmq_management__app_port }}'
comment: 'RabbitMQ Management Console'
state: '{{ rabbitmq_management__deploy_state }}'
# ]]]
# .. envvar:: rabbitmq_management__rabbitmq_server__dependent_config [[[
#
# Configuration for the :ref:`debops.rabbitmq_server` Ansible role.
rabbitmq_management__rabbitmq_server__dependent_config:
- '{{ rabbitmq_management__default_config }}'
- '{{ rabbitmq_management__config }}'
# ]]]
# .. envvar:: rabbitmq_management__nginx__dependent_servers [[[
#
# Server configuration for the :ref:`debops.nginx` Ansible role.
rabbitmq_management__nginx__dependent_servers:
- name: '{{ rabbitmq_management__fqdn }}'
by_role: 'debops.rabbitmq_management'
filename: 'debops.rabbitmq_management'
state: '{{ rabbitmq_management__deploy_state }}'
type: 'proxy'
proxy_pass: '{{ rabbitmq_management__app_protocol }}://rabbitmq_management'
proxy_redirect: 'default'
allow: '{{ rabbitmq_management__webserver_allow }}'
# ]]]
# .. envvar:: rabbitmq_management__nginx__dependent_upstreams [[[
#
# Upstream configuration for the :ref:`debops.nginx` Ansible role.
rabbitmq_management__nginx__dependent_upstreams:
- name: 'rabbitmq_management'
server: '{{ rabbitmq_management__app_host + ":" + rabbitmq_management__app_port }}'
state: '{{ rabbitmq_management__deploy_state }}'
# ]]]
# ]]]
# ]]]