diff --git a/src/nix/hive/eval.nix b/src/nix/hive/eval.nix index 062c219..a0e489f 100644 --- a/src/nix/hive/eval.nix +++ b/src/nix/hive/eval.nix @@ -146,7 +146,7 @@ let colmenaOptions.deploymentOptions hive.defaults ] ++ configs; - specialArgs = hive.meta.specialArgs // { + specialArgs = hive.meta.specialArgs // (hive.meta.nodeSpecialArgs.${name} or {}) // { inherit name; nodes = uncheckedNodes; }; diff --git a/src/nix/hive/options.nix b/src/nix/hive/options.nix index 4451649..c569ba2 100644 --- a/src/nix/hive/options.nix +++ b/src/nix/hive/options.nix @@ -248,6 +248,13 @@ with builtins; rec { type = types.attrsOf types.unspecified; default = {}; }; + nodeSpecialArgs = lib.mkOption { + description = '' + Node-specific special args. + ''; + type = types.attrsOf types.unspecified; + default = {}; + }; machinesFile = lib.mkOption { description = '' Use the machines listed in this file when building this hive configuration.