cluster/services/ways: support buckets
This commit is contained in:
parent
7570369072
commit
4cacd03afb
2 changed files with 16 additions and 3 deletions
|
@ -1,12 +1,18 @@
|
||||||
{ lib, depot, ... }:
|
{ config, lib, depot, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
options.ways = lib.mkOption {
|
options.ways = lib.mkOption {
|
||||||
type = lib.types.attrsOf (lib.types.submodule {
|
type = lib.types.attrsOf (lib.types.submodule ({ options, ... }: {
|
||||||
imports = [ ./way.nix ];
|
imports = [ ./way.nix ];
|
||||||
domainSuffixExternal = depot.lib.meta.domain;
|
domainSuffixExternal = depot.lib.meta.domain;
|
||||||
domainSuffixInternal = "internal.${depot.lib.meta.domain}";
|
domainSuffixInternal = "internal.${depot.lib.meta.domain}";
|
||||||
});
|
|
||||||
|
extras = lib.mkIf options.bucket.isDefined {
|
||||||
|
locations."/".extraConfig = ''
|
||||||
|
proxy_set_header Host "${options.bucket.value}.${config.links.garageWeb.hostname}";
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
}));
|
||||||
default = {};
|
default = {};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,6 +48,10 @@ with lib;
|
||||||
type = types.str;
|
type = types.str;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
bucket = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
};
|
||||||
|
|
||||||
healthCheckPath = mkOption {
|
healthCheckPath = mkOption {
|
||||||
type = types.path;
|
type = types.path;
|
||||||
default = "/.well-known/ways/internal-health-check";
|
default = "/.well-known/ways/internal-health-check";
|
||||||
|
@ -93,5 +97,8 @@ with lib;
|
||||||
nginxUpstreamName = "ways_upstream_${builtins.hashString "md5" options.consulService.value}";
|
nginxUpstreamName = "ways_upstream_${builtins.hashString "md5" options.consulService.value}";
|
||||||
target = "http://${options.nginxUpstreamName.value}";
|
target = "http://${options.nginxUpstreamName.value}";
|
||||||
})
|
})
|
||||||
|
(lib.mkIf options.bucket.isDefined {
|
||||||
|
consulService = "garage-web";
|
||||||
|
})
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue