mirror of
https://github.com/TECHNOFAB11/kubenix.git
synced 2025-12-12 08:00:06 +01:00
fixups
This commit is contained in:
parent
bbc5e3d477
commit
1bd3fe4d4e
22 changed files with 49 additions and 609 deletions
|
|
@ -1,4 +1,4 @@
|
|||
{ config, lib, kubenix, pkgs, k8sVersion, ... }:
|
||||
{ config, lib, kubenix, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
|
|
@ -23,8 +23,6 @@ in {
|
|||
'';
|
||||
};
|
||||
|
||||
kubernetes.version = k8sVersion;
|
||||
|
||||
kubernetes.customTypes = [
|
||||
{
|
||||
group = "stable.example.com";
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{ config, lib, kubenix, k8sVersion, ... }:
|
||||
{ config, lib, kubenix, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
|
|
@ -23,8 +23,6 @@ in {
|
|||
}];
|
||||
};
|
||||
|
||||
kubernetes.version = k8sVersion;
|
||||
|
||||
kubernetes.resources.pods.pod1 = {};
|
||||
|
||||
kubernetes.resources.pods.pod2 = {
|
||||
|
|
|
|||
|
|
@ -1,70 +0,0 @@
|
|||
{ config, lib, pkgs, kubenix, images, k8sVersion, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.kubernetes.api.resources.deployments.nginx;
|
||||
image = images.nginx;
|
||||
in {
|
||||
imports = [ kubenix.modules.test kubenix.modules.k8s kubenix.modules.docker ];
|
||||
|
||||
test = {
|
||||
distro = "k3s";
|
||||
name = "k8s-deployment-k3s";
|
||||
description = "Simple k8s testing a simple deployment";
|
||||
assertions = [{
|
||||
message = "should have correct apiVersion and kind set";
|
||||
assertion =
|
||||
if ((builtins.compareVersions config.kubernetes.version "1.7") <= 0)
|
||||
then cfg.apiVersion == "apps/v1beta1"
|
||||
else if ((builtins.compareVersions config.kubernetes.version "1.8") <= 0)
|
||||
then cfg.apiVersion == "apps/v1beta2"
|
||||
else cfg.apiVersion == "apps/v1";
|
||||
} {
|
||||
message = "should have corrent kind set";
|
||||
assertion = cfg.kind == "Deployment";
|
||||
} {
|
||||
message = "should have replicas set";
|
||||
assertion = cfg.spec.replicas == 10;
|
||||
}];
|
||||
extraConfiguration = {
|
||||
environment.systemPackages = [ pkgs.curl ];
|
||||
services.kubernetes.kubelet.seedDockerImages = config.docker.export;
|
||||
};
|
||||
testScript = ''
|
||||
kube.wait_until_succeeds("kubectl apply -f ${config.kubernetes.result}")
|
||||
|
||||
kube.succeed("kubectl get deployment | grep -i nginx")
|
||||
kube.wait_until_succeeds("kubectl get deployment -o go-template nginx --template={{.status.readyReplicas}} | grep 10")
|
||||
kube.wait_until_succeeds("curl http://nginx.default.svc.cluster.local | grep -i hello")
|
||||
'';
|
||||
};
|
||||
|
||||
docker.images.nginx.image = image;
|
||||
|
||||
kubernetes.version = k8sVersion;
|
||||
|
||||
kubernetes.resources.deployments.nginx = {
|
||||
spec = {
|
||||
replicas = 10;
|
||||
selector.matchLabels.app = "nginx";
|
||||
template.metadata.labels.app = "nginx";
|
||||
template.spec = {
|
||||
containers.nginx = {
|
||||
image = config.docker.images.nginx.path;
|
||||
imagePullPolicy = "Never";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
kubernetes.resources.services.nginx = {
|
||||
spec = {
|
||||
ports = [{
|
||||
name = "http";
|
||||
port = 80;
|
||||
}];
|
||||
selector.app = "nginx";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -42,7 +42,6 @@ in {
|
|||
message = "should have replicas set";
|
||||
assertion = cfg.spec.replicas == 3;
|
||||
}];
|
||||
driver = "kubetest";
|
||||
script = ''
|
||||
import time
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{ config, lib, kubenix, k8sVersion, ... }:
|
||||
{ config, lib, kubenix, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
|
|
@ -21,8 +21,6 @@ in {
|
|||
}];
|
||||
};
|
||||
|
||||
kubernetes.version = k8sVersion;
|
||||
|
||||
kubernetes.imports = [
|
||||
./pod.json
|
||||
./deployment.yaml
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{ config, lib, kubenix, pkgs, k8sVersion, ... }:
|
||||
{ config, lib, kubenix, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
|
|
@ -19,8 +19,6 @@ in {
|
|||
}];
|
||||
};
|
||||
|
||||
kubernetes.version = k8sVersion;
|
||||
|
||||
kubernetes.resources.customResourceDefinitions.crontabs = {
|
||||
apiVersion = "apiextensions.k8s.io/v1";
|
||||
metadata.name = "crontabs.stable.example.com";
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{ config, kubenix, k8sVersion, ... }:
|
||||
{ config, kubenix, ... }:
|
||||
|
||||
let
|
||||
cfg = config.kubernetes.api.resources.pods.nginx;
|
||||
|
|
@ -17,7 +17,5 @@ in {
|
|||
}];
|
||||
};
|
||||
|
||||
kubernetes.version = k8sVersion;
|
||||
|
||||
kubernetes.resources.pods.nginx = {};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue