diff options
author | EuAndreh <eu@euandre.org> | 2021-06-06 10:11:14 -0300 |
---|---|---|
committer | EuAndreh <eu@euandre.org> | 2021-06-06 10:11:14 -0300 |
commit | eef3c3e516c1b89f4a30d068a672dd00dd59f7b5 (patch) | |
tree | 1cad065719ae9e1149944e3f8a9a94c12189145c /aux/workflow/assert-readme.sh | |
parent | aux/: Use tabs over spaces for .sh files (diff) | |
download | remembering-eef3c3e516c1b89f4a30d068a672dd00dd59f7b5.tar.gz remembering-eef3c3e516c1b89f4a30d068a672dd00dd59f7b5.tar.xz |
README.md: Add explicit "Links" and "Releases" sections
Instead of generating the "Links" and "Releases" sections on the fly
and adding them to the end of the README.md before processing it with
aux/workflow/README.sh, embed those sections directly and use
aux/workflow/assert-readme.sh to make sure the metadata is there.
Before we had:
1. generate "Links" and "Releases" on the fly inside
aux/workflow/README.sh;
2. add those sections to the end of the README.md;
3. use the custom pandoc build command inside the
aux/workflow/README.sh file.
Now we have:
1. embed "Links" and "Releases" in the README.md directly;
2. use aux/workflow/assert-readme.sh to validate the correct metadata;
3. use the vanilla aux/workflow/commonmark.sh to generate the HTML.
Diffstat (limited to '')
-rwxr-xr-x | aux/workflow/assert-readme.sh (renamed from aux/workflow/README.sh) | 45 |
1 files changed, 18 insertions, 27 deletions
diff --git a/aux/workflow/README.sh b/aux/workflow/assert-readme.sh index 51ab5bf..47f7e25 100755 --- a/aux/workflow/README.sh +++ b/aux/workflow/assert-readme.sh @@ -3,23 +3,12 @@ set -eu mkdir -p public -PROJECT_UC="$1" -PROJECT="$2" -MAILING_LIST="$3" +PROJECT="$1" +MAILING_LIST="$2" -RELEASES_LIST="$(mktemp)" -for version in $(git tag | perl -e 'print reverse <>'); do - echo "- version [$version](https://git.euandreh.xyz/$PROJECT/snapshot/$PROJECT-$version.tar.gz) ([sig](https://git.euandreh.xyz/$PROJECT/snapshot/$PROJECT-$version.tar.gz.asc)), released in $(git log -1 --format=%cd --date=short "$version")" >> "$RELEASES_LIST" -done +EXPECTED="$(mktemp)" +cat <<EOF >> "$EXPECTED" -RELEASES="$(mktemp)" -if [ -s "$RELEASES_LIST" ]; then - printf '\n# Releases\n\n' >> "$RELEASES" - cat "$RELEASES_LIST" >> "$RELEASES" -fi - -LINKS="$(mktemp)" -cat <<EOF > "$LINKS" # Links @@ -31,15 +20,17 @@ cat <<EOF > "$LINKS" - [CHANGELOG](https://$PROJECT.euandreh.xyz/CHANGELOG.html) EOF -cat "README.md" "$LINKS" "$RELEASES" | \ - pandoc \ - --toc \ - --highlight-style pygments \ - --toc-depth=2 \ - -s \ - --metadata title="$PROJECT_UC - README" \ - --metadata lang=en \ - -r commonmark \ - -w html \ - -H aux/workflow/favicon.html \ - > public/index.html +RELEASES_LIST="$(mktemp)" +for version in $(git tag | perl -e 'print reverse <>'); do + echo "- version [$version](https://git.euandreh.xyz/$PROJECT/snapshot/$PROJECT-$version.tar.gz) ([sig](https://git.euandreh.xyz/$PROJECT/snapshot/$PROJECT-$version.tar.gz.asc)), released in $(git log -1 --format=%cd --date=short "$version")" >> "$RELEASES_LIST" +done + +if [ -s "$RELEASES_LIST" ]; then + printf '\n\n# Releases\n\n' >> "$EXPECTED" + cat "$RELEASES_LIST" >> "$EXPECTED" +fi + +if ! tail -n "$(wc -l < "$EXPECTED")" README.md | diff - "$EXPECTED"; then + echo 'Missing metadata at the end of README.md file' + exit 1 +fi |