fix tests and examples

This commit is contained in:
Jaka Hudoklin 2020-01-14 19:13:33 +00:00
parent 80cb43fcea
commit acd93f0748
No known key found for this signature in database
GPG key ID: D1F18234B07BD6E2
8 changed files with 20 additions and 16 deletions

View file

@ -26,11 +26,11 @@ rec {
# nixos test script for running the test
test-script = config.testing.testsByName.nginx-deployment.test;
# hashed kubernetes List object
result = k8s.mkHashedList { items = config.kubernetes.objects; };
# genreated kubernetes List object
generated = config.kubernetes.generated;
# YAML file you can deploy to kubernetes
yaml = toYAML k8s-result;
# JSON file you can deploy to kubernetes
result = config.kubernetes.result;
# Exported docker images
images = config.docker.export;

View file

@ -10,7 +10,7 @@ with lib;
description = "Test testing nginx deployment";
testScript = ''
$kube->waitUntilSucceeds("docker load < ${config.docker.images.nginx.image}");
$kube->waitUntilSucceeds("kubectl apply -f ${toYAML config.kubernetes.generated}");
$kube->waitUntilSucceeds("kubectl apply -f ${config.kubernetes.result}");
$kube->succeed("kubectl get deployment | grep -i nginx");
$kube->waitUntilSucceeds("kubectl get deployment -o go-template nginx --template={{.status.readyReplicas}} | grep 10");

View file

@ -55,7 +55,7 @@ in {
$kube->waitUntilSucceeds("docker load < ${postgresql}");
$kube->waitUntilSucceeds("docker load < ${postgresqlExporter}");
$kube->waitUntilSucceeds("docker load < ${minideb}");
$kube->waitUntilSucceeds("kubectl apply -f ${toYAML config.kubernetes.generated}");
$kube->waitUntilSucceeds("kubectl apply -f ${config.kubernetes.result}");
$kube->waitUntilSucceeds("PGPASSWORD=postgres ${pkgs.postgresql}/bin/psql -h app-psql-postgresql.test.svc.cluster.local -U postgres -l");
'';
};
@ -67,7 +67,8 @@ in {
kubernetes.helm.instances.app-psql = {
namespace = "test";
chart = helm.fetch {
chart = "stable/postgresql";
repo = "https://kubernetes-charts.storage.googleapis.com/";
chart = "postgresql";
version = "3.0.0";
sha256 = "06dkn4fgvgqr27hcnbbax1ylvr4sld3rcmy1w5kanljsajbph57m";
};

View file

@ -22,7 +22,7 @@ in {
assertion = latestCrontab.apiVersion == "stable.example.com/v2";
}];
testScript = ''
$kube->waitUntilSucceeds("kubectl apply -f ${toYAML config.kubernetes.generated}");
$kube->waitUntilSucceeds("kubectl apply -f ${config.kubernetes.result}");
$kube->succeed("kubectl get crds | grep -i crontabs");
$kube->succeed("kubectl get crontabs | grep -i versioned");
$kube->succeed("kubectl get crontabs | grep -i latest");

View file

@ -31,7 +31,7 @@ in {
services.kubernetes.kubelet.seedDockerImages = config.docker.export;
};
testScript = ''
$kube->waitUntilSucceeds("kubectl apply -f ${toYAML config.kubernetes.generated}");
$kube->waitUntilSucceeds("kubectl apply -f ${config.kubernetes.result}");
$kube->succeed("kubectl get deployment | grep -i nginx");
$kube->waitUntilSucceeds("kubectl get deployment -o go-template nginx --template={{.status.readyReplicas}} | grep 10");

View file

@ -41,6 +41,7 @@ in {
name = "crontabs";
description = "CronTabs resources";
attrName = "cronTabs";
group = "stable.example.com";
version = "v1";
kind = "CronTab";

View file

@ -16,14 +16,15 @@ in {
test = {
name = "legacy-crd";
description = "Simple test tesing kubenix legacy integration with crds crd";
enable = builtins.compareVersions config.kubernetes.version "1.13" >= 0;
assertions = [{
message = "should define claim in module";
message = "should define crd in module";
assertion =
hasObject {kind = "SecretClaim"; name = "secret-claim";};
hasObject {kind = "SecretClaim"; name = "module-claim";};
} {
message = "should define claim in root";
message = "should define crd in root";
assertion =
hasObject {kind = "SecretClaim"; name = "my-claim";};
hasObject {kind = "SecretClaim"; name = "root-claim";};
}];
};
@ -92,11 +93,12 @@ in {
};
};
kubernetes.modules.secret-claim = {
kubernetes.modules.module-claim = {
module = "secret-claim";
configuration.path = "tokens/test";
};
kubernetes.customResources.secret-claims.my-claim = {
kubernetes.customResources.secret-claims.root-claim = {
spec = {
path = "secrets/test2";
};

View file

@ -23,7 +23,7 @@ in {
}];
testScript = ''
$kube->waitUntilSucceeds("docker load < ${images.nginx}");
$kube->waitUntilSucceeds("kubectl apply -f ${toYAML config.kubernetes.generated}");
$kube->waitUntilSucceeds("kubectl apply -f ${config.kubernetes.result}");
$kube->succeed("kubectl get deployment -n test | grep -i test-nginx");
$kube->waitUntilSucceeds("kubectl get deployment -n test -o go-template test-nginx --template={{.status.readyReplicas}} | grep 1");