74 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			74 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| SHELL := /bin/bash
 | |
| 
 | |
| run:
 | |
| 	go run app/services/sales-api/main.go
 | |
| 
 | |
| build:
 | |
| 	go build -ldflags "-X main.build=local"
 | |
| 
 | |
| # =========================================================
 | |
| # Building containers
 | |
| 
 | |
| VERSION :=1.2
 | |
| 
 | |
| all: sales-api
 | |
| 
 | |
| sales-api:
 | |
| 	docker build \
 | |
|     -f zarf/docker/dockerfile.sales-api \
 | |
|     -t sales-api-amd64:$(VERSION) \
 | |
|     --build-arg BUILD_REF=$(VERSION) \
 | |
|     --build-arg BUILD_DATA=`date -u +"%Y-%m-%dT%H:%M:%SZ"` \
 | |
|     .
 | |
| 
 | |
| # =========================================================
 | |
| # Running from within k8s/kind
 | |
| 
 | |
| KIND_CLUSTER := xiaowei-starter-cluster
 | |
| 
 | |
| kind-up:
 | |
| 	kind create cluster \
 | |
| 		--image kindest/node:v1.21.1 \
 | |
| 		--name $(KIND_CLUSTER) \
 | |
| 		--config zarf/k8s/kind/kind-config.yaml
 | |
| 	kubectl config set-context --current --namespace sales-system
 | |
| 
 | |
| kind-down:
 | |
| 	kind delete cluster --name $(KIND_CLUSTER)
 | |
| 
 | |
| kind-status:
 | |
| 	kubectl get nodes -o wide -A
 | |
| 	kubectl get svc -o wide -A
 | |
| 	kubectl get pods -o wide -A
 | |
| 
 | |
| kind-status-sales:
 | |
| 	kubectl get pods -o wide -w
 | |
| 
 | |
| kind-load:
 | |
| 	cd zarf/k8s/kind/sales-pod; kustomize edit set image sales-api-image=sales-api-amd64:$(VERSION)
 | |
| 	kind load docker-image sales-api-amd64:$(VERSION) --name $(KIND_CLUSTER)
 | |
| 
 | |
| kind-apply:
 | |
| 	kustomize build zarf/k8s/kind/sales-pod|kubectl apply -f -
 | |
| 
 | |
| kind-logs:
 | |
| 	kubectl logs -f -l app=sales --all-containers=true
 | |
| 
 | |
| kind-restart:
 | |
| 	kubectl rollout restart deployment sales-pod
 | |
| 
 | |
| kind-update: all kind-load kind-restart
 | |
| 
 | |
| kind-update-apply: all kind-load kind-apply
 | |
| 
 | |
| kind-describe:
 | |
| 	kubectl describe node
 | |
| 	kubectl describe svc
 | |
| 	kubectl describe deployment sales-pod
 | |
| 
 | |
| # =========================================================
 | |
| # Modules support
 | |
| 
 | |
| tidy:
 | |
| 	go mod tidy
 | |
| 	go mod vendor
 |