From 8622b9fbaae45ea72148d89dfebb182e67dcb59b Mon Sep 17 00:00:00 2001 From: Egor Tensin Date: Mon, 1 Jul 2024 13:54:15 +0200 Subject: Makefile: add maintenance alias --- DEVELOPMENT.md | 8 +++++++- Makefile | 19 +++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/DEVELOPMENT.md b/DEVELOPMENT.md index 8d87c68..9cea926 100644 --- a/DEVELOPMENT.md +++ b/DEVELOPMENT.md @@ -31,7 +31,13 @@ Development Upgrading dependencies ---------------------- - bundle update +* To upgrade dependencies in Gemfile.lock & push them to the repository: + + make maintenance + +* Manually upgrade dependencies in Gemfile.lock: + + bundle update Building static pages --------------------- diff --git a/Makefile b/Makefile index 77448b4..65ec3f3 100644 --- a/Makefile +++ b/Makefile @@ -14,6 +14,25 @@ ruby: deps: ruby bundle install +.PHONY: maintenance +maintenance: ruby + bundle update + @git_status="$$( git status --porcelain=v1 )" && \ + file_statuses="$$( echo "$$git_status" | cut -c 1-2 | sort -u )" && \ + file_names="$$( echo "$$git_status" | cut -c 4- | grep -o '[^/]*$$' | sort -u )" && \ + if [ -z "$$git_status" ]; then \ + true ; \ + elif [ "$$file_statuses $$file_names" = ' M Gemfile.lock' ]; then \ + git commit -am 'bump dependencies' && \ + git push -q ; \ + else \ + echo ; \ + echo '-----------------------------------------------------------------'; \ + echo 'Error: unrecognized modifications in the repository'; \ + echo '-----------------------------------------------------------------'; \ + exit 1; \ + fi + jekyll := bundle exec jekyll .PHONY: build -- cgit v1.2.3