mirror of
				https://github.com/cmur2/kube-stale-resources.git
				synced 2025-10-31 20:25:11 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			44 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| 
 | |
| # https://tech.davis-hansson.com/p/make/
 | |
| SHELL := bash
 | |
| .ONESHELL:
 | |
| .SILENT:
 | |
| .SHELLFLAGS := -eux -o pipefail -c
 | |
| .DELETE_ON_ERROR:
 | |
| .DEFAULT_GOAL := all
 | |
| MAKEFLAGS += --warn-undefined-variables
 | |
| MAKEFLAGS += --no-builtin-rules
 | |
| 
 | |
| .PHONY: all
 | |
| all: lint ## Run lint and test (default goal)
 | |
| 
 | |
| .PHONY: lint
 | |
| lint: ## Lint all source code
 | |
| 	poetry run yapf -q *.py
 | |
| 	poetry run pylint *.py
 | |
| 	poetry run mypy *.py
 | |
| 
 | |
| .PHONY: e2e-with-kind
 | |
| e2e-with-kind: ## Run E2E tests against running kind (K8s in Docker) instance
 | |
| 	function cleanup {
 | |
| 	  (kubectl delete namespace e2e || true)
 | |
| 	}
 | |
| 	trap cleanup EXIT
 | |
| 
 | |
| 	# no resources and empty cluster should have no stale resources
 | |
| 	poetry run python kube-stale-resources.py --blacklist e2e/blacklist-kind-empty.txt -f e2e/resources-kind-empty.yml
 | |
| 
 | |
| 	# some resources in VCS and empty cluster should have no stale resources
 | |
| 	kubectl apply -f e2e/resources-kind-one.yml
 | |
| 	poetry run python kube-stale-resources.py --blacklist e2e/blacklist-kind-empty.txt -f e2e/resources-kind-one.yml
 | |
| 	cleanup
 | |
| 
 | |
| 	# some resources NOT in VCS and empty cluster should have stale resources
 | |
| 	kubectl apply -f e2e/resources-kind-one.yml
 | |
| 	(poetry run python kube-stale-resources.py --blacklist e2e/blacklist-kind-empty.txt -f e2e/resources-kind-empty.yml && exit 1 || exit 0)
 | |
| 	cleanup
 | |
| 
 | |
| .PHONY: help
 | |
| help: ## Print this help text
 | |
| 	@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-15s\033[0m %s\n", $$1, $$2}'
 | 
