difftreelog
refactor consistent module naming
in: trunk
4 files changed
README.adocdiffbeforeafterboth--- a/README.adoc
+++ b/README.adoc
@@ -60,8 +60,8 @@
# treat the contents of this file as implementation detail
data = import ./fleet.nix;
- # globalModules section of fleet config declares modules, which are used for all configured nixos hosts.
- globalModules = [
+ # nixosModules section of fleet config declares modules, which are used for all configured nixos hosts.
+ nixosModules = [
lanzaboote.nixosModules.lanzaboote
({
config,
@@ -81,7 +81,7 @@
# Is I.e wiring up the mesh VPN, or deploying kubernetes, or other things.
#
# Modules use the same semantics as standard nixos module system, they are just configuring all the hosts at once.
- modules = [
+ fleetModules = [
./wireguard
# Multi-instancible modules example
(import ./kubernetes {hosts = ["a" "b"];})
@@ -93,7 +93,7 @@
# Every host has some system, for which the system configuration needs to be built
system = "x86_64-linux";
# And nixos modules
- modules = [
+ nixosModules = [
./controlplane-1/hardware-configuration.nix
./controlplane-1/configuration.nix
# Configuration may also be specified inline, as in any nixos config.
lib/default.nixdiffbeforeafterboth1{flake-utils}: {2 fleetConfiguration = {3 # TODO: Provide by fleet, instead of requesting user to provide it.4 # This is not good that user needs to provide it, as it becomes a flake data, and fleet arbitrarily rewriting it5 # always dirnets the flake. Instead, fleetConfiguration should return function, parameters of which should be filled6 # by fleet itself, which is possible since fleet moving to nix repl execution.7 data,8 nixpkgs,9 overlays ? [],10 hosts,11 modules,12 globalModules ? [],13 extraFleetLib ? {},14 }: let15 hostNames = nixpkgs.lib.attrNames hosts;16 fleetLib =17 (import ./fleetLib.nix {18 inherit nixpkgs hostNames;19 })20 // extraFleetLib;21 in let22 root = nixpkgs.lib.evalModules {23 modules =24 (import ../modules/fleet/_modules.nix)25 ++ [26 data27 ({...}: {28 inherit globalModules hosts overlays;29 })30 ]31 ++ modules;32 specialArgs = {33 inherit nixpkgs fleetLib;34 };35 };36 failedAssertions = map (x: x.message) (nixpkgs.lib.filter (x: !x.assertion) root.config.assertions);37 checkedRoot =38 if failedAssertions != []39 then throw "Fleet failed assertions:\n${nixpkgs.lib.concatStringsSep"\n"(map(x"- ${x}")failedAssertions)}"40 else nixpkgs.lib.showWarnings root.config.warnings root;41 withData = {42 root,43 data,44 }: {45 config = root.config;46 };47 defaultData = withData {48 inherit data;49 root = checkedRoot;50 };51 uncheckedData = withData {inherit data root;};52 in {53 inherit nixpkgs overlays;54 inherit (defaultData) config;55 unchecked = {56 inherit (uncheckedData) config;57 };58 };59}modules/fleet/meta.nixdiffbeforeafterboth--- a/modules/fleet/meta.nix
+++ b/modules/fleet/meta.nix
@@ -12,12 +12,12 @@
hostName = hostConfig.config._module.args.name;
in {
options = {
- modules = mkOption {
+ nixosModules = mkOption {
type = listOf (mkOptionType {
name = "submodule";
inherit (submodule {}) check;
merge = lib.options.mergeOneOption;
- description = "Nixos modules";
+ description = "Nixos module";
});
description = "List of nixos modules";
default = [];
@@ -42,13 +42,14 @@
};
config = {
nixosSystem = hostConfig.config.nixpkgs.lib.nixosSystem {
- inherit (hostConfig.config) system modules;
+ inherit (hostConfig.config) system;
+ modules = hostConfig.config.nixosModules;
specialArgs = {
inherit fleetLib;
fleet = hostsToAttrs (host: config.hosts.${host}.nixosSystem.config);
};
};
- modules = [
+ nixosModules = [
({...}: {
networking.hostName = mkFleetGeneratorDefault hostName;
})
@@ -68,7 +69,7 @@
default = {};
description = "Configurations of individual hosts";
};
- globalModules = mkOption {
+ nixosModules = mkOption {
type = listOf (mkOptionType {
name = "submodule";
inherit (submodule {}) check;
@@ -85,14 +86,14 @@
};
config = {
hosts = hostsToAttrs (host: {
- modules =
- config.globalModules
+ nixosModules =
+ config.nixosModules
++ [
({...}: {
nixpkgs.overlays = config.overlays;
})
];
});
- globalModules = import ../../nixos/modules/module-list.nix;
+ nixosModules = import ../../nixos/modules/module-list.nix;
};
}
modules/fleet/secrets.nixdiffbeforeafterboth--- a/modules/fleet/secrets.nix
+++ b/modules/fleet/secrets.nix
@@ -133,7 +133,7 @@
})
config.sharedSecrets;
hosts = hostsToAttrs (host: {
- modules = let
+ nixosModules = let
cleanupSecret = secretName: v: {
inherit (v) public secret;
shared = true;