nix(gateway): factor the self-signed condition into a shared option
Per review: the `tls.certDir == null && !tls.acme.enable` derivation was duplicated in hive-gateway, hive-tls, and hive-ci. Expose it once as a read-only internal option `services.hyperhive.gateway.useSelfSigned` (the gateway module's single source of truth) and have hive-tls and hive-ci consume it instead of re-deriving. Eval-proven: gateway.useSelfSigned is true on the self-signed default / false with tls.certDir, and the hive-tls (HIVE_TLS_CA_PATH) + hive-ci (NODE_EXTRA_CA_CERTS) wiring derives correctly from it.
This commit is contained in:
parent
9f03cf31ba
commit
3b8e77c1c1
3 changed files with 24 additions and 6 deletions
|
|
@ -175,6 +175,23 @@ in
|
|||
'';
|
||||
};
|
||||
|
||||
useSelfSigned = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
internal = true;
|
||||
readOnly = true;
|
||||
default = useSelfSigned;
|
||||
defaultText = lib.literalExpression "tls.certDir == null && !tls.acme.enable";
|
||||
description = ''
|
||||
Read-only derived flag: `true` when the gateway serves the
|
||||
self-signed (hive-CA-signed) leaf — i.e. neither `tls.certDir` nor
|
||||
`tls.acme.enable` is configured. Single source of truth for the
|
||||
self-signed condition; consumed by the `hive-tls` and `hive-ci`
|
||||
modules so the derivation isn't duplicated. Internal — not meant to
|
||||
be set by operators (use `tls.certDir` / `tls.acme` to override the
|
||||
self-signed default).
|
||||
'';
|
||||
};
|
||||
|
||||
httpsPort = lib.mkOption {
|
||||
type = lib.types.port;
|
||||
default = 443;
|
||||
|
|
|
|||
Loading…
Reference in a new issue