github.com/nginxinc/kubernetes-ingress@v1.12.5/tests/Makefile (about) 1 CONTEXT = 2 BUILD_IMAGE = nginx/nginx-ingress:edge 3 PULL_POLICY = IfNotPresent 4 DEPLOYMENT_TYPE = deployment 5 IC_TYPE = nginx-ingress 6 SERVICE = nodeport 7 NODE_IP = 8 TAG = latest 9 PREFIX = test-runner 10 KUBE_CONFIG_FOLDER = $${HOME}/.kube 11 KIND_KUBE_CONFIG_FOLDER = $${HOME}/.kube/kind 12 SHOW_IC_LOGS = no 13 PYTEST_ARGS = 14 DOCKERFILEPATH = docker/Dockerfile 15 16 .PHONY: build 17 build: 18 docker build -t $(PREFIX):$(TAG) -f $(DOCKERFILEPATH) .. 19 20 .PHONY: run-tests 21 run-tests: 22 docker run --rm -v $(KUBE_CONFIG_FOLDER):/root/.kube $(PREFIX):$(TAG) --context=$(CONTEXT) --image=$(BUILD_IMAGE) --image-pull-policy=$(PULL_POLICY) --deployment-type=$(DEPLOYMENT_TYPE) --ic-type=$(IC_TYPE) --service=$(SERVICE) --node-ip=$(NODE_IP) --show-ic-logs=$(SHOW_IC_LOGS) $(PYTEST_ARGS) 23 24 .PHONY: run-tests-in-kind 25 run-tests-in-kind: 26 $(eval KIND_CLUSTER_IP=$(shell docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' kind-control-plane)) 27 sed -i "" "s|server:.*|server: https://$(KIND_CLUSTER_IP):6443|" $(KIND_KUBE_CONFIG_FOLDER)/config 28 docker run --network=kind --rm -v $(KIND_KUBE_CONFIG_FOLDER):/root/.kube $(PREFIX):$(TAG) --context=kind-kind --image=$(BUILD_IMAGE) --image-pull-policy=$(PULL_POLICY) --deployment-type=$(DEPLOYMENT_TYPE) --ic-type=$(IC_TYPE) --service=nodeport --node-ip=$(KIND_CLUSTER_IP) --show-ic-logs=$(SHOW_IC_LOGS) $(PYTEST_ARGS) 29 30 .PHONY: create-kind-cluster 31 create-kind-cluster: 32 $(eval K8S_VERSION=$(shell grep "K8S_VERSION:" ../.github/workflows/edge.yml | awk -F" " '{print $$2}')) 33 kind create cluster --image kindest/node:v$(K8S_VERSION) 34 kind export kubeconfig --kubeconfig $(KIND_KUBE_CONFIG_FOLDER)/config 35 36 .PHONY: delete-kind-cluster 37 delete-kind-cluster: 38 kind delete cluster