Add support tag checker
This commit is contained in:
@@ -14,6 +14,10 @@ inputs:
|
|||||||
repo:
|
repo:
|
||||||
description: 'target GitHub repository. e.g. reviewdog/reviewdog'
|
description: 'target GitHub repository. e.g. reviewdog/reviewdog'
|
||||||
required: true
|
required: true
|
||||||
|
tag:
|
||||||
|
description: 'Check tags instead of releases.'
|
||||||
|
default: 'false'
|
||||||
|
required: false
|
||||||
runs:
|
runs:
|
||||||
using: 'docker'
|
using: 'docker'
|
||||||
image: 'Dockerfile'
|
image: 'Dockerfile'
|
||||||
|
|||||||
@@ -27,13 +27,27 @@ list_releases() {
|
|||||||
curl -s "https://api.github.com/repos/${REPO}/releases"
|
curl -s "https://api.github.com/repos/${REPO}/releases"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
LATEST_VERSION="$(\
|
|
||||||
list_releases | \
|
LATEST_VERSION="${CURRENT_VERSION}"
|
||||||
jq -r '.[] | .tag_name' | \
|
if [ "${INPUT_TAG:-false}" = "true" ]; then
|
||||||
grep -oP '\d+\.\d+(\.\d+)?(-[^'\''\"\s]*)?$' | \
|
echo "Check remote tag instead of release" >&2
|
||||||
sort --version-sort --reverse | \
|
LATEST_VERSION="$(\
|
||||||
head -n1 \
|
git ls-remote -q --tags "https://github.com/${REPO}.git" | \
|
||||||
)"
|
awk '{ print $2 }' | \
|
||||||
|
grep -oP '\d+\.\d+(\.\d+)*(-[^'\''\"\s]*)?$' | \
|
||||||
|
sort --version-sort --reverse | \
|
||||||
|
head -n1 \
|
||||||
|
)"
|
||||||
|
else
|
||||||
|
LATEST_VERSION="$(\
|
||||||
|
list_releases | \
|
||||||
|
jq -r '.[] | .tag_name' | \
|
||||||
|
grep -oP '\d+\.\d+(\.\d+)*(-[^'\''\"\s]*)?$' | \
|
||||||
|
sort --version-sort --reverse | \
|
||||||
|
head -n1 \
|
||||||
|
)"
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -z "${LATEST_VERSION}" ]; then
|
if [ -z "${LATEST_VERSION}" ]; then
|
||||||
echo "cannot get latest ${REPO} version"
|
echo "cannot get latest ${REPO} version"
|
||||||
exit 1
|
exit 1
|
||||||
|
|||||||
Reference in New Issue
Block a user