Added many, many more actions.

This commit is contained in:
2025-06-24 15:24:16 -07:00
parent 62fbe4dead
commit 57ef232d2b
108 changed files with 4212 additions and 7 deletions

View File

@@ -0,0 +1,44 @@
name: get-latest-version
description: "Get the latest version of a package."
inputs:
versions:
description: "Newline-seperated list of package versions."
required: true
filter:
description: "String to filter by."
required: false
filterIsExpression:
description: "Is the first filter a Regular Expression? Values: true, false."
required: false
default: "false"
stripPrerelease:
description: "Whether or not to strip prerelease versions. Values: true, false."
required: false
default: "false"
outputs:
version:
description: "The latest version of the specified package."
value: ${{ steps.parse.outputs.version }}
runs:
using: "composite"
steps:
- name: "Get latest package."
id: parse
run: |
VERSIONS="${{ inputs.versions }}"
# Filter versions, sort them, and get the latest one
if [[ "${{ inputs.filterIsExpression }}" == "true" ]]; then
EXPRESSION_FLAG="-E"
fi
if [[ "${{ inputs.stripPrerelease }}" == "true" ]]; then
VERSIONS=$(echo "$VERSIONS" | grep -E "^(v)?[0-9]+\.[0-9]+\.[0-9]+(\.[0-9]+)?$")
fi
RESULT=$(echo "$VERSIONS" | grep $EXPRESSION_FLAG "${{ inputs.filter }}" || echo "error")
VERSION=$(echo "$RESULT" | sort -rV | head -1)
if [[ "$RESULT" != "error" ]]; then
echo "version=$VERSION" >> "$GITHUB_OUTPUT"
fi
# No error if no versions found.
shell: bash