fix(modules): use customResourceDefinitions from global module

This commit is contained in:
Jaka Hudoklin 2017-11-27 13:12:45 +01:00
parent 722e001790
commit 9b3bd3b252
4 changed files with 26 additions and 3 deletions

View file

@ -7,7 +7,10 @@ with import ./lib.nix { inherit pkgs; inherit (pkgs) lib; };
let
evalKubernetesModules = configuration: evalModules {
modules = [./kubernetes.nix ./modules.nix configuration];
modules = [
(import ./kubernetes.nix {})
./modules.nix configuration
];
args = {
inherit pkgs;
name = "default";

View file

@ -1,3 +1,5 @@
{ customResourceDefinitions ? null }:
{ config, lib, k8s, pkgs, ... }:
with lib;
@ -282,7 +284,11 @@ let
} // extraOptions;
}));
}
) config.kubernetes.resources.customResourceDefinitions;
) (
if customResourceDefinitions == null
then config.kubernetes.resources.customResourceDefinitions
else customResourceDefinitions
);
in {
inherit swaggerDefinitions definitions exportedDefinitions kubernetesResourceOptions customResourceOptions;
};

View file

@ -8,7 +8,10 @@ let
evalK8SModule = {module, name, configuration}: evalModules {
modules = [
./kubernetes.nix ./modules.nix module configuration
(import ./kubernetes.nix {
customResourceDefinitions = config.kubernetes.resources.customResourceDefinitions;
})
./modules.nix module configuration
] ++ config.kubernetes.defaultModuleConfiguration;
args = {
inherit pkgs k8s name;
@ -88,6 +91,12 @@ in {
) config.kubernetes.modules
);
kubernetes.customResources = mkMerge (
mapAttrsToList (name: module:
prefixResources (moduleToAttrs module.evaledModule.config.kubernetes.customResources) module.name
) config.kubernetes.modules
);
kubernetes.defaultModuleConfiguration = [{
config.kubernetes.version = mkDefault config.kubernetes.version;
}];

View file

@ -39,6 +39,11 @@ with lib;
metadata.name = mkForce "${name}-nginx";
}
];
kubernetes.customResources.cron.my-awesome-cron-object = mkMerge [
(k8s.loadJSON ./cr.json)
{metadata.name = name;}
];
};
};