mirror of
https://github.com/oauth2-proxy/oauth2-proxy.git
synced 2025-01-26 05:27:28 +02:00
67 lines
2.2 KiB
Makefile
67 lines
2.2 KiB
Makefile
all:
|
|
@echo "Usage:"
|
|
@echo " make create-cluster"
|
|
@echo " make deploy"
|
|
|
|
# create kind cluster with nginx-ingress as the most popular ingress controller for K8S
|
|
.PHONY: deploy
|
|
create-cluster:
|
|
kind create cluster --name oauth2-proxy --config kind-cluster.yaml
|
|
make setup-dns
|
|
make setup-ingress
|
|
|
|
.PHONY: setup-ingress
|
|
setup-ingress:
|
|
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/provider/kind/deploy.yaml
|
|
kubectl --namespace ingress-nginx rollout status --timeout 5m deployment/ingress-nginx-controller
|
|
|
|
# default Pod CIDR is 10.244.0.0/16 https://github.com/kubernetes-sigs/kind/blob/a6e8108025bc7a9440beedb8ef7714aec84fe87e/pkg/apis/config/v1alpha4/default.go#L52
|
|
# what makes cluster host IP equal to 10.244.0.1
|
|
# thus we add dex.localtest.me and oauth2-proxy.localtest.me stub hosts pointing to this IP
|
|
# NOT NEEDED IN REAL LIFE!
|
|
.PHONY: setup-dns
|
|
setup-dns:
|
|
kubectl apply -f custom-dns.yaml
|
|
kubectl -n kube-system rollout restart deployment/coredns
|
|
kubectl -n kube-system rollout status --timeout 5m deployment/coredns
|
|
|
|
.PHONY: delete-cluster
|
|
delete-cluster:
|
|
kind delete cluster --name oauth2-proxy
|
|
|
|
.PHONY: deploy
|
|
deploy:
|
|
kubectl apply -f oauth2-proxy-example-full.yaml
|
|
kubectl rollout status --timeout 5m deployment/oauth2-proxy-example-oauth2-proxy-sample
|
|
kubectl rollout status --timeout 1m deployment/oauth2-proxy-example-httpbin
|
|
kubectl rollout status --timeout 1m deployment/oauth2-proxy-example-hello-world
|
|
|
|
.PHONY: undeploy
|
|
undeploy:
|
|
kubectl delete -f oauth2-proxy-example-full.yaml
|
|
|
|
######################
|
|
###### HELM CMDs #####
|
|
######################
|
|
.PHONY: helm-init
|
|
helm-init:
|
|
helm dep update
|
|
|
|
# unpacking is useful to be able to explore underlying helm charts
|
|
.PHONY: helm-unpack
|
|
helm-unpack:
|
|
cd charts; for f in *.tgz; do tar -zxf "$$f"; done
|
|
|
|
.PHONY: helm-deploy
|
|
helm-deploy: helm-init
|
|
helm upgrade --wait --debug --install --render-subchart-notes oauth2-proxy-example .
|
|
|
|
.PHONY: helm-undeploy
|
|
helm-undeploy:
|
|
helm del oauth2-proxy-example
|
|
|
|
# creates K8S manifest from helm chart
|
|
.PHONY: helm-create-manifest
|
|
helm-create-manifest: helm-init
|
|
helm template --namespace default oauth2-proxy-example . > oauth2-proxy-example-full.yaml
|