VERSION := $(shell git rev-parse --abbrev-ref HEAD) GOBIN = $(shell go env GOPATH)/bin .PHONY: serve serve: assets hugo server -D --log -w --bind 0.0.0.0 .PHONY: new-post new-post: @hugo new posts/$(TITLE).md .PHONY: build build: docker build -t vdhsn/blog:${VERSION} -f Dockerfile . .PHONY: publish-master publish-master: publish @echo 'master build detected' docker tag vdhsn/blog:${VERSION} vdhsn/blog:latest docker push vdhsn/blog:latest .PHONY: clean build publish: clean build docker push vdhsn/blog:${VERSION} .PHONY: test-publish test-publish: build docker run -it -p 8080:80 vdhsn/blog:${VERSION} .PHONY: docker-build-dev docker-build-dev: @docker build --build-arg='VERSION=0.62.0' -t hugo -f Dockerfile.dev . .PHONY: deploy deploy: kubectl rollout restart deployment blog .PHONY: clean clean: @rm -rf ./public ./resources ./assets/css/syntax.* ./layouts/partials/single/footer.html public: ./assets/css/syntax.light.css ./assets/css/syntax.dark.css ./layouts/partials/single/footer.html hugo --environment production --minify --gc --templateMetrics --templateMetricsHints --verbose --enableGitInfo assets: ./assets/css/syntax.light.css ./assets/css/syntax.dark.css ./layouts/partials/single/footer.html HUGO_BIN = $(GOBIN)/hugo $(HUGO_BIN): @go install --tags extended github.com/gohugoio/hugo@latest OPENRING_BIN = $(GOBIN)/openring $(OPENRING_BIN): @go install -v git.sr.ht/~sircmpwn/openring@latest ./assets/css: mkdir -p ./assets/css ./assets/css/syntax.light.css: hugo gen chromastyles --style=github > assets/css/syntax.light.css ./assets/css/syntax.dark.css: hugo gen chromastyles --style=github-dark > assets/css/syntax.dark.css ./layouts/partials/single/footer.html: $(OPENRING_BIN) mkdir -p ./layouts/partials/single/ $(OPENRING_BIN) \ -s https://dave.cheney.net/feed/atom \ -s https://tech.davis-hansson.com/index.xml \ -s https://blog.benjojo.co.uk/rss.xml \ -s https://drewdevault.com/feed.xml \ < ./assets/openring.in.html \ > ./layouts/partials/single/footer.html