semaphore-container/Makefile

25 lines
995 B
Makefile

REPOSITORY = vcs.enp.one/skylab/semaphore-container
OPENTOFU_VERSION = 1.6.2
SEMAPHORE_VERSION = 2.9.64
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