49 lines
980 B
Makefile
49 lines
980 B
Makefile
|
|
||
|
GOFILES=$(wildcard *.go)
|
||
|
NAME=musala-push
|
||
|
MJML_TEMPLATES=$(wildcard templates/*.mjml)
|
||
|
MJML_OUTPUT=$(patsubst %.mjml,%.mjml.html,$(MJML_TEMPLATES))
|
||
|
|
||
|
all: build
|
||
|
|
||
|
%.mjml.html: %.mjml
|
||
|
npx mjml $< --config.minify > $@
|
||
|
|
||
|
|
||
|
.PHONY: build build-binaries build-templates
|
||
|
build: build-binaries build-templates ## build executable
|
||
|
|
||
|
build-binaries: build-templates
|
||
|
go build ./...
|
||
|
|
||
|
build-templates: $(MJML_OUTPUT)
|
||
|
|
||
|
install: ## install binaries
|
||
|
go install ./...
|
||
|
|
||
|
.PHONY: shellcheck
|
||
|
shellcheck: ## run shellcheck validation
|
||
|
scripts/validate/shellcheck
|
||
|
|
||
|
.PHONY: help
|
||
|
help: ## print this help
|
||
|
@awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {sub("\\\\n",sprintf("\n%22c"," "), $$2);printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST)
|
||
|
|
||
|
.PHONY: clean clean-templates clean-binaries
|
||
|
clean: clean-templates clean-binaries ## remove build artifacts
|
||
|
|
||
|
clean-templates:
|
||
|
rm -f ./templates/*.mjml.html
|
||
|
|
||
|
clean-binaries:
|
||
|
rm -rf ./_build/*
|
||
|
|
||
|
test: build
|
||
|
./test.sh
|
||
|
|
||
|
npm:
|
||
|
npm install
|
||
|
|
||
|
|
||
|
|