forked from mirrors/nixpkgs
jitsi-videobridge: refactor broken apis option to
colibriRestApi Refactor option to use jvb.conf and convert to boolean. Using the CLI argument broke a while ago and is deprecated by upstream since 2021: https://github.com/jitsi/jitsi-videobridge/pull/1738/files#diff-d9f589d2aae1673693461d7c3b9214324201ca1f43db63a3c773d4acfc52bc81 This fixes the currently broken test: nixosTests.prometheus-exporters.jitsi
This commit is contained in:
parent
deb36f65f0
commit
cb81bd9340
|
@ -557,6 +557,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
|||
|
||||
- `make-disk-image` handles `contents` arguments that are directories better, fixing a bug where it used to put them in a subdirectory of the intended `target`.
|
||||
|
||||
- The option `services.jitsi-videobridge.apis` has been renamed to `colibriRestApi` and turned into a boolean. Setting it to `true` will enable the private rest API, useful for monitoring using `services.prometheus.exporters.jitsi.enable`. Learn more about the API: "[The COLIBRI control interface (/colibri/)](https://github.com/jitsi/jitsi-videobridge/blob/v2.3/doc/rest.md)".
|
||||
|
||||
## Detailed migration information {#sec-release-23.05-migration}
|
||||
|
||||
### Pipewire configuration overrides {#sec-release-23.05-migration-pipewire}
|
||||
|
|
|
@ -43,6 +43,7 @@ let
|
|||
muc_nickname = xmppConfig.mucNickname;
|
||||
disable_certificate_verification = xmppConfig.disableCertificateVerification;
|
||||
});
|
||||
apis.rest.enabled = cfg.colibriRestApi;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -50,6 +51,11 @@ let
|
|||
jvbConfig = recursiveUpdate defaultJvbConfig cfg.config;
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
(mkRemovedOptionModule [ "services" "jitsi-videobridge" "apis" ]
|
||||
"services.jitsi-videobridge.apis was broken and has been migrated into the boolean option services.jitsi-videobridge.colibriRestApi. It is set to false by default, setting it to true will correctly enable the private /colibri rest API."
|
||||
)
|
||||
];
|
||||
options.services.jitsi-videobridge = with types; {
|
||||
enable = mkEnableOption (lib.mdDoc "Jitsi Videobridge, a WebRTC compatible video router");
|
||||
|
||||
|
@ -192,14 +198,13 @@ in
|
|||
'';
|
||||
};
|
||||
|
||||
apis = mkOption {
|
||||
type = with types; listOf str;
|
||||
colibriRestApi = mkOption {
|
||||
type = bool;
|
||||
description = lib.mdDoc ''
|
||||
What is passed as --apis= parameter. If this is empty, "none" is passed.
|
||||
Needed for monitoring jitsi.
|
||||
Whether to enable the private rest API for the COLIBRI control interface.
|
||||
Needed for monitoring jitsi, enabling scraping of the /colibri/stats endpoint.
|
||||
'';
|
||||
default = [];
|
||||
example = literalExpression "[ \"colibri\" \"rest\" ]";
|
||||
default = false;
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -233,7 +238,7 @@ in
|
|||
"export ${toVarName name}=$(cat ${xmppConfig.passwordFile})\n"
|
||||
) cfg.xmppConfigs))
|
||||
+ ''
|
||||
${pkgs.jitsi-videobridge}/bin/jitsi-videobridge --apis=${if (cfg.apis == []) then "none" else concatStringsSep "," cfg.apis}
|
||||
${pkgs.jitsi-videobridge}/bin/jitsi-videobridge
|
||||
'';
|
||||
|
||||
serviceConfig = {
|
||||
|
|
|
@ -328,7 +328,7 @@ let
|
|||
systemd.services.prometheus-jitsi-exporter.after = [ "jitsi-videobridge2.service" ];
|
||||
services.jitsi-videobridge = {
|
||||
enable = true;
|
||||
apis = [ "colibri" "rest" ];
|
||||
colibriRestApi = true;
|
||||
};
|
||||
};
|
||||
exporterTest = ''
|
||||
|
|
Loading…
Reference in a new issue