From d1808d857314eb2e900247db0d3aa902c3a18094 Mon Sep 17 00:00:00 2001 From: ansgarz Date: Tue, 7 Jun 2022 18:40:24 +0200 Subject: [PATCH] fix tests --- src/test/cljc/dda/c4k_gitea/gitea_test.cljc | 73 ++++++++++++ src/test/cljc/dda/c4k_shynet/shynet_test.cljc | 110 ------------------ 2 files changed, 73 insertions(+), 110 deletions(-) create mode 100644 src/test/cljc/dda/c4k_gitea/gitea_test.cljc delete mode 100644 src/test/cljc/dda/c4k_shynet/shynet_test.cljc diff --git a/src/test/cljc/dda/c4k_gitea/gitea_test.cljc b/src/test/cljc/dda/c4k_gitea/gitea_test.cljc new file mode 100644 index 0000000..a38cf9e --- /dev/null +++ b/src/test/cljc/dda/c4k_gitea/gitea_test.cljc @@ -0,0 +1,73 @@ +(ns dda.c4k-gitea.gitea-test + (:require + #?(:clj [clojure.test :refer [deftest is are testing run-tests]] + :cljs [cljs.test :refer-macros [deftest is are testing run-tests]]) + [dda.c4k-gitea.gitea :as cut])) + + +(deftest should-generate-webserver-deployment + (is (= {:apiVersion "apps/v1", + :kind "Deployment", + :metadata + {:name "gitea", :namespace "default", :labels {:app "gitea"}}, + :spec + {:replicas 1, + :selector {:matchLabels {:app "gitea"}}, + :template + {:metadata {:name "gitea", :labels {:app "gitea"}}, + :spec + {:containers + [{:name "gitea", + :image "gitea/gitea:1.16.8", + :imagePullPolicy "Always", + :env + [{:name "GITEA__service__DISABLE_REGISTRATION", :value "true"} + {:name "GITEA__repository__DEFAULT_PRIVATE", :value "private"} + {:name "GITEA__service__ENABLE_CAPTCHA", :value "true"} + {:name "GITEA__database__DB_TYPE", :value "postgres"} + {:name "GITEA__database__HOST", + :value "postgresql-service.postgres.svc.cluster.local:5432"} + {:name "GITEA__database__NAME", :value "postgres"} + {:name "GITEA__database__USER", :value "pg-user"} + {:name "GITEA__database__PASSWD", :value "pg-pw"}], + :volumeMounts + [{:name "app-ini-config-volume", + :mountPath "/tmp/app.ini", + :subPath "app.ini"} + {:name "gitea-root-volume", :mountPath "/var/lib/gitea"} + {:name "gitea-data-volume", :mountPath "/data"}], + :ports + [{:containerPort 22, :name "git-ssh"} + {:containerPort 3000, :name "gitea"}]}], + :volumes + [{:name "app-ini-config-volume", + :configMap {:name "gitea-app-ini-config"}} + {:name "gitea-root-volume", + :persistentVolumeClaim {:claimName "gitea-root-pvc"}} + {:name "gitea-data-volume", + :persistentVolumeClaim {:claimName "gitea-data-pvc"}}]}}}} + (cut/generate-deployment {:fqdn "test.com" :issuer :staging :postgres-db-user "pg-user" :postgres-db-password "pg-pw"})))) + + +(deftest should-generate-ingress + (is (= {:apiVersion "networking.k8s.io/v1", + :kind "Ingress", + :metadata + {:name "ingress-gitea", + :namespace "default", + :annotations + {:kubernetes.io/ingress.class "traefik", + :cert-manager.io/cluster-issuer "staging"}}, + :spec + {:tls [{:hosts ["test.com"], :secretName "gitea-ingress-cert"}], + :rules + [{:host "test.com", + :http + {:paths + [{:pathType "Prefix", + :path "/", + :backend + {:service {:name "gitea-service", :port {:number 3000}}}}]}}]}} + (cut/generate-ingress {:fqdn "test.com" :issuer :staging})))) + + diff --git a/src/test/cljc/dda/c4k_shynet/shynet_test.cljc b/src/test/cljc/dda/c4k_shynet/shynet_test.cljc deleted file mode 100644 index 293e236..0000000 --- a/src/test/cljc/dda/c4k_shynet/shynet_test.cljc +++ /dev/null @@ -1,110 +0,0 @@ -(ns dda.c4k-shynet.shynet-test - (:require - #?(:clj [clojure.test :refer [deftest is are testing run-tests]] - :cljs [cljs.test :refer-macros [deftest is are testing run-tests]]) - [dda.c4k-shynet.shynet :as cut])) - - -(deftest should-generate-webserver-deployment - (is (= {:apiVersion "apps/v1" - :kind "Deployment" - :metadata - {:name "shynet-webserver" - :namespace "default" - :labels {:app "shynet-webserver"}} - :spec - {:selector {:matchLabels {:app "shynet-webserver"}} - :strategy {:type "Recreate"} - :replicas 1 - :template - {:metadata {:labels {:app "shynet-webserver"}} - :spec - {:containers - [{:name "shynet-webserver" - :image "milesmcc/shynet:v0.12.0" - :imagePullPolicy "IfNotPresent" - :envFrom [{:secretRef {:name "shynet-settings"}}]}]}}}} - (cut/generate-webserver-deployment)))) - -(deftest should-generate-celeryworker-deployment - (is (= {:apiVersion "apps/v1" - :kind "Deployment" - :metadata - {:name "shynet-celeryworker" - :namespace "default" - :labels {:app "shynet-celeryworker"}} - :spec - {:selector {:matchLabels {:app "shynet-celeryworker"}} - :strategy {:type "Recreate"} - :replicas 1 - :template - {:metadata {:labels {:app "shynet-celeryworker"}} - :spec - {:containers - [{:name "shynet-celeryworker" - :image "milesmcc/shynet:v0.12.0" - :imagePullPolicy "IfNotPresent" - :command ["./celeryworker.sh"] - :envFrom [{:secretRef {:name "shynet-settings"}}]}]}}}} - (cut/generate-celeryworker-deployment)))) - -(deftest should-generate-certificate - (is (= {:apiVersion "cert-manager.io/v1" - :kind "Certificate" - :metadata {:name "shynet-cert", :namespace "default"} - :spec - {:secretName "shynet-secret" - :commonName "test.com" - :dnsNames ["test.com"] - :issuerRef {:name "staging", :kind "ClusterIssuer"}}} - (cut/generate-certificate {:fqdn "test.com" :issuer :staging})))) - -(deftest should-generate-ingress - (is (= {:apiVersion "networking.k8s.io/v1" - :kind "Ingress" - :metadata - {:name "shynet-webserver-ingress" - :annotations - {:ingress.kubernetes.io/force-ssl-redirect "true" - :ingress.kubernetes.io/ssl-redirect "true" - :cert-manager.io/cluster-issuer - "staging"}} - :spec - {:tls [{:hosts ["test.com"], :secretName "shynet-secret"}] - :rules - [{:host "test.com" - :http - {:paths - [{:backend - {:service - {:name "shynet-webserver-service" - :port {:number 8080}}} - :path "/" - :pathType "Prefix"}]}}]}} - (cut/generate-ingress {:fqdn "test.com" :issuer :staging})))) - -(deftest should-generate-secret - (is (= {:apiVersion "v1" - :kind "Secret" - :metadata {:name "shynet-settings"} - :type "Opaque" - :stringData - {:DEBUG "False" - :ALLOWED_HOSTS "*" - :DJANGO_SECRET_KEY "django-pw" - :ACCOUNT_SIGNUPS_ENABLED "False" - :TIME_ZONE "America/New_York" - :REDIS_CACHE_LOCATION - "redis://shynet-redis.default.svc.cluster.local/0" - :CELERY_BROKER_URL - "redis://shynet-redis.default.svc.cluster.local/1" - :DB_NAME "shynet" - :DB_USER "postgres-user" - :DB_PASSWORD "postgres-pw" - :DB_HOST "postgresql-service" - :EMAIL_HOST_USER "" - :EMAIL_HOST_PASSWORD "" - :EMAIL_HOST "" - :SERVER_EMAIL "Shynet "}} - (cut/generate-secret {:fqdn "test.com" :django-secret-key "django-pw" - :postgres-db-user "postgres-user" :postgres-db-password "postgres-pw"})))) \ No newline at end of file