From f091420c1d194ad398142959266f18493da1ff83 Mon Sep 17 00:00:00 2001 From: happysalada Date: Mon, 30 Aug 2021 17:11:49 +0900 Subject: rabbitmq: add option to enable management plugin --- nixos/modules/services/amqp/rabbitmq.nix | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'nixos/modules/services/amqp') diff --git a/nixos/modules/services/amqp/rabbitmq.nix b/nixos/modules/services/amqp/rabbitmq.nix index 2db28210262..8fdfda9a66d 100644 --- a/nixos/modules/services/amqp/rabbitmq.nix +++ b/nixos/modules/services/amqp/rabbitmq.nix @@ -134,6 +134,28 @@ in type = types.listOf types.path; description = "The list of directories containing external plugins"; }; + + managementPlugin = mkOption { + description = "The options to run the management plugin"; + type = types.submodule { + options = { + enable = mkOption { + default = false; + type = types.bool; + description = '' + Whether to enable the management plugin + ''; + }; + port = mkOption { + default = 15672; + type = types.port; + description = '' + On which port to run the management plugin + ''; + }; + }; + }; + }; }; }; @@ -158,8 +180,13 @@ in services.rabbitmq.configItems = { "listeners.tcp.1" = mkDefault "${cfg.listenAddress}:${toString cfg.port}"; + } // optionalAttrs cfg.managementPlugin.enable { + "management.tcp.port" = toString cfg.managementPlugin.port; + "management.tcp.ip" = cfg.listenAddress; }; + services.rabbitmq.plugins = optional cfg.managementPlugin.enable "rabbitmq_management"; + systemd.services.rabbitmq = { description = "RabbitMQ Server"; -- cgit 1.4.1