Personal_Website/Makefile
2022-06-15 23:07:41 +02:00

36 lines
1.1 KiB
Makefile

CONTENT_FILES := $(wildcard content/**/*.md)
.DEFAULT_GOAL := help
.PHONY: help
help:
@printf "\033[33mUsage:\033[0m\n make [target] [arg=\"val\"...]\n\n\033[33mTargets:\033[0m\n"
@grep -E '^[-a-zA-Z0-9_\.\/]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf " \033[32m%-15s\033[0m %s\n", $$1, $$2}'
.PHONY: run
run: static/js/lunr/PagesIndex.json ## Start development environment
@docker-compose up -d hugo
.PHONY: stop
stop: ## Stop development environment
@docker-compose stop
.PHONY: down
down: ## Take down development environment
@docker-compose down
.PHONY: logs
logs: ## Tail development logs
@docker-compose logs -f --since=1m
.PHONY: shell
shell: ## Open a shell in the hugo container (it needs to be running) You are root in the container, so new files need to be chown'ed properly
@docker-compose exec -it hugo sh
.PHONY: update-search-index
update-search-index: static/js/lunr/PagesIndex.json ## Update the search index if needed
static/js/lunr/PagesIndex.json: $(CONTENT_FILES)
@echo "Rebuilding search index..."
@docker-compose run --rm node docker/prod-host/search-indexer.js