diff options
-rw-r--r-- | .github/workflows/jekyll.yml | 8 | ||||
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | Makefile | 45 | ||||
-rw-r--r-- | _config.yml | 1 |
4 files changed, 51 insertions, 4 deletions
diff --git a/.github/workflows/jekyll.yml b/.github/workflows/jekyll.yml index b506038..f1941f4 100644 --- a/.github/workflows/jekyll.yml +++ b/.github/workflows/jekyll.yml @@ -26,9 +26,9 @@ jobs: with: ruby-version: '${{ matrix.ruby-version }}' bundler-cache: true - - name: jekyll build - run: bundle exec jekyll build --drafts + - name: Build + run: make build - name: Check integrity run: | - nohup bundle exec jekyll serve --drafts --baseurl '' & - sleep 3 && wget --no-verbose --recursive --convert-links --adjust-extension --directory-prefix=/tmp -- http://localhost:4000/ + nohup make serve & + sleep 3 && make wget @@ -1 +1,2 @@ _site/ +.wget/ diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..d7bbe71 --- /dev/null +++ b/Makefile @@ -0,0 +1,45 @@ +MAKEFLAGS += --no-builtin-rules --no-builtin-variables --warn-undefined-variables +.DEFAULT_GOAL := all +.DELETE_ON_ERROR: +.SUFFIXES: +SHELL := bash +.SHELLFLAGS := -e -o pipefail -c + +escape = $(subst ','\'',$(1)) + +define noexpand +ifeq ($$(origin $(1)),environment) + $(1) := $$(value $(1)) +endif +ifeq ($$(origin $(1)),environment override) + $(1) := $$(value $(1)) +endif +ifeq ($$(origin $(1)),command line) + override $(1) := $$(value $(1)) +endif +endef + +.PHONY: all +all: serve + +.PHONY: ruby +ruby: + command -v rbenv && rbenv install --skip-existing + +.PHONY: deps +deps: ruby + bundle install + +.PHONY: build +build: + bundle exec jekyll build --drafts + +.PHONY: serve +serve: + bundle exec jekyll serve --drafts + +URL := http://localhost:4000/blog/ + +.PHONY: wget +wget: + wget --no-verbose --recursive --no-parent --convert-links --adjust-extension -e robots=off --directory-prefix=.wget -- '$(call escape,$(URL))' diff --git a/_config.yml b/_config.yml index 33e3462..ae3f7d9 100644 --- a/_config.yml +++ b/_config.yml @@ -4,6 +4,7 @@ baseurl: /blog exclude: - Gemfile - Gemfile.lock + - Makefile - README.md - vendor/ |