hugo-theme-readable

Fork of https://github.com/cjtheham/hugo-theme-readable
git clone https://git.eamoncaddigan.net/hugo-theme-readable.git
Log | Files | Refs | README | LICENSE

commit affe4cced4907e1b6e64e2c66b5285e40918f12c
parent f25e4d2ec8770bfa5c1b23c7b228d995f7a20356
Author: Robert Lützner <robert.luetzner@pm.me>
Date:   Tue, 27 Feb 2024 02:49:12 +0000

Skip prereleases of readable.css in the CI workflow (#21)

Until now the algorithm would assume that the latest release on
Codeberg is always a final release.

There is the very real possibility of prereleases, which we've learned
today, but we can easily use jq to filter these out.

This relates to #19 and fixes #20.
Diffstat:
M.github/scripts/update-readable-css.sh | 19+++++++++++++------
1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/.github/scripts/update-readable-css.sh b/.github/scripts/update-readable-css.sh @@ -4,15 +4,22 @@ set -o pipefail set -o nounset # Query the codeberg.org API (see -# https://codeberg.org/api/swagger#/repository/repoListReleases) and use jq to -# get the tag name of the latest release (i.e. the first element of the array -# in the JSON output). Finally, use sed to remove the double quotes around the -# value. +# https://codeberg.org/api/swagger#/repository/repoListReleases +# ) and use jq to get the tag name of the +# latest release (i.e. the first element of the +# array in the JSON output, that is not a +# prerelease). +# The '-r' option will give us "raw" output, +# i.e. without surrounding double-quotes. +# We use 'map' and 'select' in combination, +# because jq won't return a list otherwise. +# Only using 'select' returns just the matching +# elements, which is not a valid json that we +# can process further. TAG_VERSION=$(curl -s \ -H 'accept: application/json' \ https://codeberg.org/api/v1/repos/Freedom-to-Write/readable.css/releases \ - | jq '.[0].tag_name' \ - | sed 's/"//g') + | jq -r '.|map(select(.prerelease==false))[0].tag_name') echo "Latest tag: ${TAG_VERSION}"