11# Makefile
22# This makefile is for development purpose
33
4+ # ##############################################################################
5+ # # Setup: ##
6+ # ##############################################################################
47SHELL = /bin/bash
5- # SED ?= sed
68
79DOCKERFILE ="Dockerfile"
810IMAGE_REGISTRY ="ghcr.io/sovereigncloudstack/standards"
9- IMAGE_NAME ="scsconformance"
10- # IMAGE_VERSION_TAG ="v0.1.2"
11+ IMAGE_NAME ="scs-kaas-conformance"
1112
1213KIND_CLUSTER ="testcluster"
1314
14- # PLUGIN_NAME="k8s-default-storage-class-plugin-go"
15- PLUGIN_NAME ="plugin"
15+ PLUGIN_NAME ="scs-conformance-sonobuoy-plugin"
1616PLUGIN_FILE ="${PLUGIN_NAME}.yaml"
17+ KIND_CONFIG_FILE ="kind_config.yaml"
1718
18- # ~ SONO_WAIT = 1
19- # ~ SONO_TIMEOUT = 60
20-
21- KUBERNETES_SERVICE_HOST =127.0.0.1
22- KUBERNETES_SERVICE_PORT =34743
23-
19+ SONO_WAIT = 30
2420
2521# ##############################################################################
2622# # Helpers: ##
2723# ##############################################################################
2824
29- ifeq ( $( IMAGE_VERSION_TAG ) ,)
25+ ifndef IMAGE_VERSION_TAG :
3026 export TAG=dev
3127else
3228 export TAG=${IMAGE_VERSION_TAG}
@@ -46,70 +42,75 @@ kind-init:
4642 @echo " [KindCluster] ${KIND_CLUSTER} "
4743 @echo " "
4844
49-
5045# ##############################################################################
5146# # For develpoment usage: ##
5247# ##############################################################################
5348
5449dev-prerequests :
55- @echo " [check-test-setup]"
5650 @kind version
57- @docker version
51+ @docker version -f json | jq ' .Client.Version '
5852 @sonobuoy version --short
53+ @yq --version
54+ @jq --version
5955 @go version
6056 @docker buildx version
6157
6258
6359dev-setup : kind-init
64- kind create cluster --name ${KIND_CLUSTER}
60+ kind create cluster --config ${KIND_CONFIG_FILE} -- name ${KIND_CLUSTER}
6561
6662
6763dev-build : container-init
68- @echo " [build ]"
64+ @echo " [Building image... ]"
6965 DOCKER_BUILDKIT=1 docker build . -f ${DOCKERFILE} -t ${SONOBUOY_IMAGE}
7066 kind load docker-image --name ${KIND_CLUSTER} ${SONOBUOY_IMAGE}
7167
7268
73- dev-go :
74- @echo " [go]"
75- @echo " [KubernetesService] ${KUBERNETES_SERVICE_HOST} :${KUBERNETES_SERVICE_PORT} "
76- @rm -rf ./build || true
77- @mkdir ./build
78- go test -c -o ./build ./...
79- # go test -c -o ./build ./... --args --skip-labels="type=pod-list"
80- # go tool test2json ./build -test.v
69+ dev-run :
70+ @echo " [Running sonobuoy...]"
71+ @sonobuoy run -p ${PLUGIN_FILE} --wait=${SONO_WAIT}
72+ @sonobuoy status
8173
8274
83- dev-run :
84- @echo " [run-test]"
85- @echo " sonobuoy run --plugin ${PLUGIN_FILE} --wait=${SONO_WAIT} --timeout=${SONO_TIMEOUT} "
86- # ~ @sonobuoy run --plugin ${PLUGIN_FILE} --wait=${SONO_WAIT} --timeout=${SONO_TIMEOUT}
87- @sonobuoy run --plugin ${PLUGIN_FILE}
75+ dev-run-background :
76+ @echo " [Running sonobuoy in background...]"
77+ @sonobuoy run -p ${PLUGIN_FILE}
8878 @sonobuoy status
8979
9080
91- dev-result :
92- @echo " [result]"
93- # outfile=$(sonobuoy retrieve) && mkdir results && tar -xf ${outfile} -C results
81+ dev-result : dev-clean-result
82+ @echo " [Retrieve results...]"
9483 sonobuoy retrieve
95- sonobuoy results * .tar.gz
84+ @echo " [Extracting results...] "
9685 mkdir results
9786 tar -xf * .tar.gz -C results
87+ cat results/plugins/scs-kaas-conformance/sonobuoy_results.yaml | yq
88+ cat results/plugins/scs-kaas-conformance/results/global/out.json | jq
89+ @echo " [Displaying results...]"
90+ sonobuoy results * .tar.gz
9891
9992
100- dev-clean :
101- @echo " [clean] "
102- @sonobuoy delete --all --wait || true
103- @sonobuoy status || true
93+ dev-rerun : dev-clean-sonobuoy dev-build dev-run dev-result
94+
95+
96+ dev-clean-result :
10497 @rm -rf * .tar.gz || true
10598 @rm -rf results || true
10699
107100
101+ dev-clean-sonobuoy : dev-clean-result
102+ @echo " [Cleanup sonobuoy environment from cluster...]"
103+ @sonobuoy delete --all --wait || true
104+ @sonobuoy status || true
108105
109- dev-purge : kind-init dev-clean
110- @echo " [purge]"
106+
107+ dev-purge : kind-init clean-sonobuoy
108+ @echo " [Purge everthing...]"
109+ @echo " [Deleting kind cluster...]"
111110 kind delete cluster --name ${KIND_CLUSTER} || true
111+ @echo " [Removing docker image...]"
112112 docker rmi ${SONOBUOY_IMAGE} || true
113+ @rm -rf ./build || true
113114
115+ PHONY : dev-prerequests dev-build dev-run dev-result dev-clean-sonobuoy dev-clean-result dev-purge dev-rerun dev-run-background
114116
115- PHONY : dev-prerequests dev-build dev-run dev-result dev-clean dev-clean dev-purge
0 commit comments