25 lines
		
	
	
		
			995 B
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			25 lines
		
	
	
		
			995 B
		
	
	
	
		
			Makefile
		
	
	
	
	
	
REPOSITORY         = vcs.enp.one/skylab/semaphore-container
 | 
						|
OPENTOFU_VERSION   = 1.6.2
 | 
						|
SEMAPHORE_VERSION  = 2.9.45
 | 
						|
SPECTRE_VERSION    = main
 | 
						|
PYTHON_VERSION     = 3.11
 | 
						|
 | 
						|
 | 
						|
.PHONY: help docs
 | 
						|
# source: https://marmelab.com/blog/2016/02/29/auto-documented-makefile.html
 | 
						|
help: ## List Makefile targets
 | 
						|
	$(info Makefile documentation)
 | 
						|
	@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-10s\033[0m %s\n", $$1, $$2}'
 | 
						|
 | 
						|
 | 
						|
image:  ## Build image
 | 
						|
	podman build . --tag $(REPOSITORY):v$(SEMAPHORE_VERSION) --build-arg "OPENTOFU_VERSION=$(OPENTOFU_VERSION)" --build-arg "SEMAPHORE_VERSION=$(SEMAPHORE_VERSION)" --build-arg "PYTHON_VERSION=$(PYTHON_VERSION)" --build-arg "SPECTRE_VERSION=$(SPECTRE_VERSION)"
 | 
						|
 | 
						|
push: image  ## Build and publish image
 | 
						|
	podman login $(shell echo $(REPOSITORY) | cut -d '/' -f 1)
 | 
						|
	podman push $(REPOSITORY):v$(SEMAPHORE_VERSION)
 | 
						|
 | 
						|
dev:  ## Setup local dev environment
 | 
						|
	poetry install --with dev
 | 
						|
	poetry run pre-commit install
 |