Make `make deploy` do nothing unless sources are updated
Alan Pearce alan@alanpearce.eu
Sun, 09 Jul 2023 15:08:56 +0200
2 files changed, 8 insertions(+), 3 deletions(-)
jump to
M .gitignore → .gitignore
@@ -1,5 +1,6 @@ /public /.deploystamp /.formatstamp +/.compressstamp .direnv /result
M Makefile → Makefile
@@ -21,6 +21,7 @@ @touch .formatstamp clean: rm -rf ./$(PREFIX) + rm -rf ./.*stamp to_compress := $(shell fd . $(PREFIX) --type=file -e html -e xml -e txt -e asc) brotli_files := $(patsubst %, %.br, $(to_compress)) @@ -63,14 +64,17 @@ ${PREFIX}/%.asc.zst: ${PREFIX}/%.asc $(zstd) $< > $@ -compress: .formatstamp $(brotli_files) $(gzip_files) $(zstd_files) +compress: .compressstamp + +.compressstamp: .formatstamp $(brotli_files) $(gzip_files) $(zstd_files) + @touch .compressstamp install: compress deploy: .deploystamp -.deploystamp: build format compress +.deploystamp: .compressstamp Caddyfile redis.Caddyfile Dockerfile fly.toml fly deploy @touch .deploystamp -.PHONY: all clean build install deploy +.PHONY: all clean build format compress install deploy