diff options
-rw-r--r-- | Makefile | 10 | ||||
-rwxr-xr-x | aux/ci/ci-build.sh | 2 | ||||
-rwxr-xr-x | aux/workflow/assert-changelog.sh | 14 | ||||
-rwxr-xr-x | aux/workflow/dist.sh | 5 |
4 files changed, 19 insertions, 12 deletions
@@ -8,6 +8,7 @@ MANPREFIX = $(PREFIX)/share/man VERSION = 0.2.1 DATE = 2021-02-23 DEFS = -DVERSION='"$(VERSION)"' -DDATE='"$(DATE)"' +NAME = remembering sources = src/remembering.c @@ -36,10 +37,6 @@ check: all sh tests/cli-opts.sh sh tests/ranking.sh sh tests/signals.sh - if [ -d .git ]; then \ - echo 'Assuming Git repository, running development checks.'; \ - $(MAKE) dev-check; \ - fi VALGRIND_FLAGS= \ --show-error-list=yes \ @@ -48,12 +45,13 @@ VALGRIND_FLAGS= \ --track-origins=yes \ --error-exitcode=1 -dev-check: all fallible-tests +dev-check: check fallible-tests valgrind $(VALGRIND_FLAGS) ./run-tests fallible-check ./fallible-tests sh aux/assert-clang-format.sh sh aux/assert-shellcheck.sh sh aux/workflow/assert-todos.sh + sh aux/workflow/assert-changelog.sh $(NAME) clean: rm -rf public/ tests/test-profiles/ remembering remembering-c run-tests fallible* vgcore* @@ -74,8 +72,6 @@ uninstall: rm -f $(DESTDIR)$(PREFIX)/bin/remembering for m in $(manpages); do rm -f $(DESTDIR)$(MANPREFIX)/man$${##*.}/`basename $$m`.gz; done -NAME = remembering - dist: sh aux/workflow/dist.sh $(DATE) $(VERSION) $(NAME) diff --git a/aux/ci/ci-build.sh b/aux/ci/ci-build.sh index fb49e71..1c033fe 100755 --- a/aux/ci/ci-build.sh +++ b/aux/ci/ci-build.sh @@ -50,7 +50,7 @@ EOF RUNNER='sh -c' fi - $RUNNER 'make clean check public' + $RUNNER 'make clean dev-check public' rsync -avzzP public/ "/srv/http/$PACKAGE/" --delete } 2>&1 | tee "$LOGFILE" diff --git a/aux/workflow/assert-changelog.sh b/aux/workflow/assert-changelog.sh new file mode 100755 index 0000000..d39f527 --- /dev/null +++ b/aux/workflow/assert-changelog.sh @@ -0,0 +1,14 @@ +#!/bin/sh +set -eu + +PROJECT="$1" + +for VVERSION in $(git tag); do + VERSION="${VVERSION#v}" + DATE="$(git log -1 --format=%cd --date=short "$VVERSION")" + CHANGELOG_ENTRY="# [$VERSION](https://git.euandreh.xyz/$PROJECT/commit/?id=$VVERSION) - $DATE" + if ! grep -qF "$CHANGELOG_ENTRY" CHANGELOG.md; then + echo "Missing '$CHANGELOG_ENTRY' entry from CHANGELOG.md" >&2 + exit 1 + fi +done diff --git a/aux/workflow/dist.sh b/aux/workflow/dist.sh index b337ef0..afe2c92 100755 --- a/aux/workflow/dist.sh +++ b/aux/workflow/dist.sh @@ -16,10 +16,7 @@ if [ "$DATE" != "$(git log -1 --format=%cd --date=short HEAD)" ]; then exit 1 fi -if ! grep -q "^# $VERSION - $DATE$" CHANGELOG.md; then - echo "Missing '# $VERSION - $DATE' entry from CHANGELOG.md" >&2 - exit 1 -fi +sh aux/workflow/assert-changelog.sh "$DATE" "$VERSION" "$PROJECT" git tag "$VVERSION" |