mirror of
https://github.com/TECHNOFAB11/kubenix.git
synced 2025-12-13 00:20:07 +01:00
fmt
This commit is contained in:
parent
836fe9abd0
commit
bc5c70db39
13 changed files with 68 additions and 57 deletions
|
|
@ -1,7 +1,8 @@
|
||||||
{system ? builtins.currentSystem}: (
|
{system ? builtins.currentSystem}:
|
||||||
|
(
|
||||||
(import ./compat.nix).flake-compat {
|
(import ./compat.nix).flake-compat {
|
||||||
src = ./.;
|
src = ./.;
|
||||||
inherit system;
|
inherit system;
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
.defaultNix
|
.defaultNix
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,8 @@
|
||||||
registry,
|
registry,
|
||||||
}: let
|
}: let
|
||||||
# evaluated configuration
|
# evaluated configuration
|
||||||
inherit ((evalModules {
|
inherit
|
||||||
|
((evalModules {
|
||||||
module = {kubenix, ...}: {
|
module = {kubenix, ...}: {
|
||||||
imports = [
|
imports = [
|
||||||
kubenix.modules.testing
|
kubenix.modules.testing
|
||||||
|
|
@ -29,7 +30,9 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
})) config;
|
}))
|
||||||
|
config
|
||||||
|
;
|
||||||
in {
|
in {
|
||||||
inherit config;
|
inherit config;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@
|
||||||
nixpkgs,
|
nixpkgs,
|
||||||
...
|
...
|
||||||
} @ inputs:
|
} @ inputs:
|
||||||
(inputs.flake-utils.lib.eachSystem ["x86_64-linux"](
|
(inputs.flake-utils.lib.eachSystem ["x86_64-linux"] (
|
||||||
#inputs.flake-utils.lib.eachDefaultSystem (
|
#inputs.flake-utils.lib.eachDefaultSystem (
|
||||||
system: let
|
system: let
|
||||||
pkgs = import inputs.nixpkgs {
|
pkgs = import inputs.nixpkgs {
|
||||||
|
|
|
||||||
|
|
@ -305,7 +305,8 @@ with lib; let
|
||||||
|
|
||||||
genResourceOptions = resource:
|
genResourceOptions = resource:
|
||||||
with gen; let
|
with gen; let
|
||||||
submoduleForDefinition' = definition: submoduleForDefinition
|
submoduleForDefinition' = definition:
|
||||||
|
submoduleForDefinition
|
||||||
definition.ref
|
definition.ref
|
||||||
definition.name
|
definition.name
|
||||||
definition.kind
|
definition.kind
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,4 @@
|
||||||
{
|
{lib, ...}:
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib; {
|
with lib; {
|
||||||
options = {
|
options = {
|
||||||
kubenix.project = mkOption {
|
kubenix.project = mkOption {
|
||||||
|
|
|
||||||
|
|
@ -415,7 +415,8 @@ in {
|
||||||
features = ["k8s" "submodule"];
|
features = ["k8s" "submodule"];
|
||||||
module = {config, ...}: {
|
module = {config, ...}: {
|
||||||
# set module defaults
|
# set module defaults
|
||||||
kubernetes.api.defaults = (filter (default: default.propagate) cfg.api.defaults)
|
kubernetes.api.defaults =
|
||||||
|
(filter (default: default.propagate) cfg.api.defaults)
|
||||||
++ [
|
++ [
|
||||||
# set module name and version for all kuberentes resources
|
# set module name and version for all kuberentes resources
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -236,7 +236,10 @@ in {
|
||||||
}: let
|
}: let
|
||||||
evaledSubmodule' = evalModules {
|
evaledSubmodule' = evalModules {
|
||||||
inherit specialArgs;
|
inherit specialArgs;
|
||||||
modules = config.modules ++ [./base.nix] ++ [
|
modules =
|
||||||
|
config.modules
|
||||||
|
++ [./base.nix]
|
||||||
|
++ [
|
||||||
{
|
{
|
||||||
_module.args.check = false;
|
_module.args.check = false;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -12,10 +12,7 @@ with lib; let
|
||||||
kubecerts = "/var/lib/kubernetes/secrets";
|
kubecerts = "/var/lib/kubernetes/secrets";
|
||||||
|
|
||||||
# how we differ from the standard configuration of mkKubernetesBaseTest
|
# how we differ from the standard configuration of mkKubernetesBaseTest
|
||||||
extraConfiguration = {
|
extraConfiguration = {config, ...}: {
|
||||||
config,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
virtualisation = {
|
virtualisation = {
|
||||||
memorySize = 2048;
|
memorySize = 2048;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
{system ? builtins.currentSystem}: (
|
{system ? builtins.currentSystem}:
|
||||||
|
(
|
||||||
(import ./compat.nix).flake-compat {
|
(import ./compat.nix).flake-compat {
|
||||||
src = ./.;
|
src = ./.;
|
||||||
inherit system;
|
inherit system;
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
.shellNix
|
.shellNix
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,8 @@
|
||||||
doThrowError ? true, # whether any testing error should throw an error
|
doThrowError ? true, # whether any testing error should throw an error
|
||||||
enabledTests ? null,
|
enabledTests ? null,
|
||||||
}: let
|
}: let
|
||||||
inherit ((evalModules {
|
inherit
|
||||||
|
((evalModules {
|
||||||
module = {
|
module = {
|
||||||
kubenix,
|
kubenix,
|
||||||
pkgs,
|
pkgs,
|
||||||
|
|
@ -48,6 +49,8 @@
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
})) config;
|
}))
|
||||||
|
config
|
||||||
|
;
|
||||||
in
|
in
|
||||||
config.testing // {recurseForDerivations = true;}
|
config.testing // {recurseForDerivations = true;}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,14 @@
|
||||||
{ config, lib, pkgs, kubenix, helm, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
kubenix,
|
||||||
|
helm,
|
||||||
|
...
|
||||||
|
}:
|
||||||
with lib;
|
with lib;
|
||||||
with kubenix.lib;
|
with kubenix.lib;
|
||||||
with pkgs.dockerTools;
|
with pkgs.dockerTools; let
|
||||||
let
|
|
||||||
corev1 = config.kubernetes.api.resources.core.v1;
|
corev1 = config.kubernetes.api.resources.core.v1;
|
||||||
appsv1 = config.kubernetes.api.resources.apps.v1;
|
appsv1 = config.kubernetes.api.resources.apps.v1;
|
||||||
|
|
||||||
|
|
@ -30,9 +35,8 @@ let
|
||||||
finalImageName = "docker.io/bitnami/bitnami-shell";
|
finalImageName = "docker.io/bitnami/bitnami-shell";
|
||||||
finalImageTag = "10";
|
finalImageTag = "10";
|
||||||
};
|
};
|
||||||
in
|
in {
|
||||||
{
|
imports = [kubenix.modules.test kubenix.modules.helm kubenix.modules.k8s kubenix.modules.docker];
|
||||||
imports = [ kubenix.modules.test kubenix.modules.helm kubenix.modules.k8s kubenix.modules.docker ];
|
|
||||||
|
|
||||||
docker.images = {
|
docker.images = {
|
||||||
postgresql.image = postgresql;
|
postgresql.image = postgresql;
|
||||||
|
|
@ -43,13 +47,15 @@ in
|
||||||
test = {
|
test = {
|
||||||
name = "helm-simple";
|
name = "helm-simple";
|
||||||
description = "Simple k8s testing wheter name, apiVersion and kind are preset";
|
description = "Simple k8s testing wheter name, apiVersion and kind are preset";
|
||||||
assertions = [{
|
assertions = [
|
||||||
|
{
|
||||||
message = "should have generated resources";
|
message = "should have generated resources";
|
||||||
assertion =
|
assertion =
|
||||||
appsv1.StatefulSet ? "app-psql-postgresql-primary" &&
|
appsv1.StatefulSet
|
||||||
appsv1.StatefulSet ? "app-psql-postgresql-read" &&
|
? "app-psql-postgresql-primary"
|
||||||
corev1.Secret ? "app-psql-postgresql" &&
|
&& appsv1.StatefulSet ? "app-psql-postgresql-read"
|
||||||
corev1.Service ? "app-psql-postgresql-headless";
|
&& corev1.Secret ? "app-psql-postgresql"
|
||||||
|
&& corev1.Service ? "app-psql-postgresql-headless";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
message = "should have values passed";
|
message = "should have values passed";
|
||||||
|
|
@ -59,7 +65,8 @@ in
|
||||||
message = "should have namespace defined";
|
message = "should have namespace defined";
|
||||||
assertion =
|
assertion =
|
||||||
appsv1.StatefulSet.app-psql-postgresql-primary.metadata.namespace == "test";
|
appsv1.StatefulSet.app-psql-postgresql-primary.metadata.namespace == "test";
|
||||||
}];
|
}
|
||||||
|
];
|
||||||
script = ''
|
script = ''
|
||||||
@pytest.mark.applymanifest('${config.kubernetes.resultYAML}')
|
@pytest.mark.applymanifest('${config.kubernetes.resultYAML}')
|
||||||
def test_helm_deployment(kube):
|
def test_helm_deployment(kube):
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,4 @@
|
||||||
{
|
{kubenix, ...}: {
|
||||||
kubenix,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = with kubenix.modules; [test k8s istio];
|
imports = with kubenix.modules; [test k8s istio];
|
||||||
|
|
||||||
test = {
|
test = {
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ with lib; let
|
||||||
inherit (config.submodules.instances) instance5;
|
inherit (config.submodules.instances) instance5;
|
||||||
inherit (config.submodules.instances) versioned-submodule;
|
inherit (config.submodules.instances) versioned-submodule;
|
||||||
|
|
||||||
submodule = { ...}: {
|
submodule = {...}: {
|
||||||
imports = [kubenix.modules.submodule];
|
imports = [kubenix.modules.submodule];
|
||||||
|
|
||||||
options.submodule.args = {
|
options.submodule.args = {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue