mirror of
https://github.com/TECHNOFAB11/kubenix.git
synced 2025-12-12 08:00:06 +01:00
49 lines
1.4 KiB
Nix
49 lines
1.4 KiB
Nix
{ config, test, kubenix, k8s, helm, ... }:
|
|
|
|
with k8s;
|
|
|
|
let
|
|
corev1 = config.kubernetes.api.core.v1;
|
|
appsv1beta2 = config.kubernetes.api.apps.v1beta2;
|
|
in {
|
|
imports = [
|
|
kubenix.helm
|
|
];
|
|
|
|
test = {
|
|
name = "helm-simple";
|
|
description = "Simple k8s testing wheter name, apiVersion and kind are preset";
|
|
assertions = [{
|
|
message = "should have generated resources";
|
|
assertion =
|
|
appsv1beta2.StatefulSet ? "app-psql-postgreql-master" &&
|
|
appsv1beta2.StatefulSet ? "app-psql-postgresql-slave" &&
|
|
corev1.ConfigMap ? "app-psql-postgresql-init-scripts" &&
|
|
corev1.Secret ? "app-psql-postgresql" &&
|
|
corev1.Service ? "app-psql-postgresql-headless" ;
|
|
} {
|
|
message = "should have values passed";
|
|
assertion = appsv1beta2.StatefulSet.app-psql-postgresql-slave.spec.replicas == 2;
|
|
} {
|
|
message = "should have namespace defined";
|
|
assertion =
|
|
appsv1beta2.StatefulSet.app-psql-postgresql-master.metadata.namespace == "test-namespace";
|
|
}];
|
|
};
|
|
|
|
kubernetes.api.namespaces.test-namespace = {};
|
|
|
|
kubernetes.helm.instances.app-psql = {
|
|
namespace = "test-namespace";
|
|
chart = helm.fetch {
|
|
chart = "stable/postgresql";
|
|
version = "3.0.0";
|
|
sha256 = "0icnnpcqvf1hqn7fc9niyifd0amlm9jfrx3iks0y360rk8wndbch";
|
|
};
|
|
|
|
values = {
|
|
replication.enabled = true;
|
|
replication.slaveReplicas = 2;
|
|
};
|
|
};
|
|
}
|