From f6e47d592c2d9950d852cd8510e1b1a2da8a173f Mon Sep 17 00:00:00 2001 From: Abel Luck Date: Fri, 27 Feb 2026 14:49:50 +0100 Subject: [PATCH] nix fmt --- .../services/buildbot-nix-autoscaler.nix | 21 +++++++++++++++++-- .../nixos/services/nix-builder-autoscaler.nix | 13 ++++++++++-- 2 files changed, 30 insertions(+), 4 deletions(-) diff --git a/nix/modules/nixos/services/buildbot-nix-autoscaler.nix b/nix/modules/nixos/services/buildbot-nix-autoscaler.nix index 16a9ccd..2bc09e0 100644 --- a/nix/modules/nixos/services/buildbot-nix-autoscaler.nix +++ b/nix/modules/nixos/services/buildbot-nix-autoscaler.nix @@ -6,14 +6,24 @@ }: let cfg = config.services.buildbot-nix.nix-build-autoscaler; + defaultExtensionPackage = + if builtins.hasAttr "buildbot-autoscale-ext" pkgs then + pkgs."buildbot-autoscale-ext" + else if + builtins.hasAttr "python3Packages" pkgs + && builtins.hasAttr "buildbot-autoscale-ext" pkgs.python3Packages + then + pkgs.python3Packages."buildbot-autoscale-ext" + else + null; in { options.services.buildbot-nix.nix-build-autoscaler = { enable = lib.mkEnableOption "buildbot-nix autoscaler gate integration"; extensionPackage = lib.mkOption { - type = lib.types.package; - default = pkgs.buildbot-autoscale-ext; + type = lib.types.nullOr lib.types.package; + default = defaultExtensionPackage; description = "Package providing buildbot_autoscale_ext."; }; @@ -125,6 +135,13 @@ in config = lib.mkIf cfg.enable { assertions = [ + { + assertion = cfg.extensionPackage != null; + message = '' + services.buildbot-nix.nix-build-autoscaler.extensionPackage is not set and + pkgs.buildbot-autoscale-ext was not found. Configure extensionPackage explicitly. + ''; + } { assertion = cfg.builderClusterHost != null; message = "services.buildbot-nix.nix-build-autoscaler.builderClusterHost must be set."; diff --git a/nix/modules/nixos/services/nix-builder-autoscaler.nix b/nix/modules/nixos/services/nix-builder-autoscaler.nix index 5ebd217..10a9818 100644 --- a/nix/modules/nixos/services/nix-builder-autoscaler.nix +++ b/nix/modules/nixos/services/nix-builder-autoscaler.nix @@ -6,6 +6,8 @@ }: let cfg = config.services.nix-builder-autoscaler; + defaultAutoscalerPackage = + if builtins.hasAttr "nix-builder-autoscaler" pkgs then pkgs."nix-builder-autoscaler" else null; generatedConfigPath = "/run/nix-builder-autoscaler/config.toml"; tomlStringList = values: "[${lib.concatMapStringsSep ", " (value: ''"${value}"'') values}]"; in @@ -14,8 +16,8 @@ in enable = lib.mkEnableOption "nix-builder-autoscaler daemon"; package = lib.mkOption { - type = lib.types.package; - default = pkgs.nix-builder-autoscaler; + type = lib.types.nullOr lib.types.package; + default = defaultAutoscalerPackage; description = "Package providing nix_builder_autoscaler."; }; @@ -209,6 +211,13 @@ in config = lib.mkIf cfg.enable { assertions = [ + { + assertion = cfg.package != null; + message = '' + services.nix-builder-autoscaler.package is not set and pkgs.nix-builder-autoscaler + was not found. Configure package explicitly. + ''; + } { assertion = cfg.aws.launchTemplateIdFile != null; message = "services.nix-builder-autoscaler.aws.launchTemplateIdFile must be set.";