mirror of
https://github.com/reecetech/version-increment.git
synced 2025-12-21 14:35:44 +00:00
Compare commits
21 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c1faa9d742 | ||
|
|
ca62a5d18e | ||
|
|
f149a06e08 | ||
|
|
dee3ec8905 | ||
|
|
8df12f2eb1 | ||
|
|
16351e1923 | ||
|
|
512aaef59f | ||
|
|
238431148e | ||
|
|
192637163e | ||
|
|
b51c517604 | ||
|
|
3165846543 | ||
|
|
f16cac75c5 | ||
|
|
d4ed669f7f | ||
|
|
a121e1106e | ||
|
|
0483a06d99 | ||
|
|
a6b9cc8234 | ||
|
|
2055d25933 | ||
|
|
acb0193bef | ||
|
|
ed7b98e336 | ||
|
|
13338be6d3 | ||
|
|
74a6f3d520 |
14
.github/workflows/test-and-release.yml
vendored
14
.github/workflows/test-and-release.yml
vendored
@@ -27,9 +27,9 @@ jobs:
|
|||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Setup bats
|
- name: Setup bats
|
||||||
uses: mig4/setup-bats@af9a00deb21b5d795cabfeaa8d9060410377686d # v1.2.0
|
uses: bats-core/bats-action@2.0.0
|
||||||
with:
|
with:
|
||||||
bats-version: 1.8.0
|
bats-version: 1.11.0
|
||||||
|
|
||||||
- name: Test
|
- name: Test
|
||||||
run: bats tests/*.bats
|
run: bats tests/*.bats
|
||||||
@@ -72,12 +72,20 @@ jobs:
|
|||||||
- lint
|
- lint
|
||||||
- test
|
- test
|
||||||
- test-api-mode
|
- test-api-mode
|
||||||
runs-on: ubuntu-latest
|
strategy:
|
||||||
|
matrix:
|
||||||
|
os:
|
||||||
|
- macos-latest
|
||||||
|
- ubuntu-latest
|
||||||
|
- windows-latest
|
||||||
|
fail-fast: true
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code # have to checkout to have the source code available
|
- name: Checkout code # have to checkout to have the source code available
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Remove .git directory # remove the git directory to make the testing valid
|
- name: Remove .git directory # remove the git directory to make the testing valid
|
||||||
|
shell: bash
|
||||||
run: rm -rf .git/
|
run: rm -rf .git/
|
||||||
|
|
||||||
- name: Get next version via API
|
- name: Get next version via API
|
||||||
|
|||||||
@@ -2,6 +2,10 @@
|
|||||||
|
|
||||||
## Use 📄
|
## Use 📄
|
||||||
|
|
||||||
|
> [!NOTE]
|
||||||
|
> This action is confirmed to work on all three of GitHub's hosted runners -
|
||||||
|
> `ubuntu-latest`, `macos-latest` and `windows-latest` - at the point in time of the release of the action
|
||||||
|
|
||||||
### Example ⌨️
|
### Example ⌨️
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@@ -9,7 +13,7 @@
|
|||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Get next version
|
- name: Get next version
|
||||||
uses: reecetech/version-increment@2023.9.3
|
uses: reecetech/version-increment@2024.4.3
|
||||||
id: version
|
id: version
|
||||||
with:
|
with:
|
||||||
scheme: semver
|
scheme: semver
|
||||||
@@ -30,7 +34,7 @@ use the API mode:
|
|||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
- name: Get next version
|
- name: Get next version
|
||||||
uses: reecetech/version-increment@2024.4.1
|
uses: reecetech/version-increment@2024.4.3
|
||||||
id: version
|
id: version
|
||||||
with:
|
with:
|
||||||
use_api: true
|
use_api: true
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ runs:
|
|||||||
using: "composite"
|
using: "composite"
|
||||||
steps:
|
steps:
|
||||||
- id: version-lookup
|
- id: version-lookup
|
||||||
run: ${{ github.action_path }}/version-lookup.sh
|
run: "${GITHUB_ACTION_PATH}/version-lookup.sh"
|
||||||
shell: bash
|
shell: bash
|
||||||
env:
|
env:
|
||||||
github_token: ${{ github.token }}
|
github_token: ${{ github.token }}
|
||||||
@@ -88,7 +88,7 @@ runs:
|
|||||||
use_api: ${{ inputs.use_api }}
|
use_api: ${{ inputs.use_api }}
|
||||||
|
|
||||||
- id: version-increment
|
- id: version-increment
|
||||||
run: ${{ github.action_path }}/version-increment.sh
|
run: "${GITHUB_ACTION_PATH}/version-increment.sh"
|
||||||
shell: bash
|
shell: bash
|
||||||
env:
|
env:
|
||||||
current_version: ${{ steps.version-lookup.outputs.CURRENT_VERSION }}
|
current_version: ${{ steps.version-lookup.outputs.CURRENT_VERSION }}
|
||||||
|
|||||||
31
shared.sh
31
shared.sh
@@ -2,6 +2,9 @@
|
|||||||
# shellcheck disable=SC2034
|
# shellcheck disable=SC2034
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
|
# Force UTF-8 for all commands, for Git-Bash on Windows compatibility
|
||||||
|
export LC_ALL=C.UTF-8
|
||||||
|
|
||||||
##==----------------------------------------------------------------------------
|
##==----------------------------------------------------------------------------
|
||||||
## SemVer regexes
|
## SemVer regexes
|
||||||
## see: https://semver.org/spec/v2.0.0.html#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string
|
## see: https://semver.org/spec/v2.0.0.html#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string
|
||||||
@@ -49,17 +52,35 @@ if [[ "${use_api}" == 'true' ]] ; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
##==----------------------------------------------------------------------------
|
##==----------------------------------------------------------------------------
|
||||||
## MacOS compatibility - for local testing
|
## MacOS compatibility
|
||||||
|
|
||||||
export grep="grep"
|
export use_perl="false"
|
||||||
if [[ "$(uname)" == "Darwin" ]] ; then
|
export use_gnugrep="false"
|
||||||
export grep="ggrep"
|
if [[ "${GITHUB_ACTIONS:-}" == 'true' && "$(uname)" == 'Darwin' ]] ; then
|
||||||
if ! grep --version 1>/dev/null ; then
|
export use_perl="true"
|
||||||
|
elif [[ "$(uname)" == 'Darwin' ]] ; then
|
||||||
|
if perl --version 1>/dev/null ; then
|
||||||
|
export use_perl="true"
|
||||||
|
elif ! ggrep --version 1>/dev/null ; then
|
||||||
echo "🛑 GNU grep not installed, try brew install coreutils" 1>&2
|
echo "🛑 GNU grep not installed, try brew install coreutils" 1>&2
|
||||||
exit 9
|
exit 9
|
||||||
|
else
|
||||||
|
export use_gnugrep="true"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
function grep_p() {
|
||||||
|
if [[ "${use_perl}" == 'true' ]] ; then
|
||||||
|
perl -ne "print if /${1}/"
|
||||||
|
elif [[ "${use_gnugrep}" == 'true' ]] ; then
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
ggrep -P "${1}"
|
||||||
|
else
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
command grep -P "${1}"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
##==----------------------------------------------------------------------------
|
##==----------------------------------------------------------------------------
|
||||||
## Non GitHub compatibility - for testing both locally and in BATS
|
## Non GitHub compatibility - for testing both locally and in BATS
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,15 @@
|
|||||||
#!/usr/bin/env bats
|
#!/usr/bin/env bats
|
||||||
# vim: set ft=sh sw=4 :
|
# vim: set ft=sh sw=4 :
|
||||||
|
|
||||||
|
setup() {
|
||||||
|
# get the containing directory of this file
|
||||||
|
# use $BATS_TEST_FILENAME instead of ${BASH_SOURCE[0]} or $0,
|
||||||
|
# as those will point to the bats executable's location or the preprocessed file respectively
|
||||||
|
DIR="$( cd "$( dirname "$BATS_TEST_FILENAME" )" >/dev/null 2>&1 && pwd )"
|
||||||
|
# make executables in src/ visible to PATH
|
||||||
|
PATH="$DIR/../:$PATH"
|
||||||
|
}
|
||||||
|
|
||||||
load helper_print-info
|
load helper_print-info
|
||||||
|
|
||||||
export repo=".tmp_testing/repo"
|
export repo=".tmp_testing/repo"
|
||||||
@@ -22,7 +31,7 @@ function init_repo {
|
|||||||
@test "fails if no current_version given" {
|
@test "fails if no current_version given" {
|
||||||
init_repo
|
init_repo
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 8 ] &&
|
[ "$status" -eq 8 ] &&
|
||||||
@@ -34,7 +43,7 @@ function init_repo {
|
|||||||
|
|
||||||
export current_version=1.3.5-prerelease
|
export current_version=1.3.5-prerelease
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 8 ] &&
|
[ "$status" -eq 8 ] &&
|
||||||
@@ -46,7 +55,7 @@ function init_repo {
|
|||||||
|
|
||||||
export scheme="foover"
|
export scheme="foover"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 8 ] &&
|
[ "$status" -eq 8 ] &&
|
||||||
@@ -58,7 +67,7 @@ function init_repo {
|
|||||||
|
|
||||||
export pep440="yes"
|
export pep440="yes"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 8 ] &&
|
[ "$status" -eq 8 ] &&
|
||||||
@@ -70,7 +79,7 @@ function init_repo {
|
|||||||
|
|
||||||
export increment="critical"
|
export increment="critical"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 8 ] &&
|
[ "$status" -eq 8 ] &&
|
||||||
@@ -90,7 +99,7 @@ function init_repo {
|
|||||||
export current_version=1.2.3
|
export current_version=1.2.3
|
||||||
export increment="patch"
|
export increment="patch"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -106,7 +115,7 @@ function init_repo {
|
|||||||
export current_version=1.2.3
|
export current_version=1.2.3
|
||||||
export increment="minor"
|
export increment="minor"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -123,7 +132,7 @@ function init_repo {
|
|||||||
export pep404="false"
|
export pep404="false"
|
||||||
export increment="minor"
|
export increment="minor"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -139,7 +148,7 @@ function init_repo {
|
|||||||
export current_version=1.2.3
|
export current_version=1.2.3
|
||||||
export increment="major"
|
export increment="major"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -156,7 +165,7 @@ function init_repo {
|
|||||||
export pep404="true"
|
export pep404="true"
|
||||||
export increment="major"
|
export increment="major"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -172,7 +181,7 @@ function init_repo {
|
|||||||
export current_version=1.2.3
|
export current_version=1.2.3
|
||||||
export increment="major"
|
export increment="major"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -189,7 +198,7 @@ function init_repo {
|
|||||||
export current_version=2020.6.4
|
export current_version=2020.6.4
|
||||||
export scheme="calver"
|
export scheme="calver"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -202,7 +211,7 @@ function init_repo {
|
|||||||
export current_version="$(date +%Y.%-m.123)"
|
export current_version="$(date +%Y.%-m.123)"
|
||||||
export scheme="calver"
|
export scheme="calver"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -216,7 +225,7 @@ function init_repo {
|
|||||||
export GITHUB_REF="refs/heads/super-awesome-feature"
|
export GITHUB_REF="refs/heads/super-awesome-feature"
|
||||||
export short_ref="$(git rev-parse --short HEAD | sed 's/0*//')"
|
export short_ref="$(git rev-parse --short HEAD | sed 's/0*//')"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -231,7 +240,7 @@ function init_repo {
|
|||||||
export GITHUB_REF="refs/heads/releases"
|
export GITHUB_REF="refs/heads/releases"
|
||||||
export release_branch="releases"
|
export release_branch="releases"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -248,7 +257,7 @@ function init_repo {
|
|||||||
export GITHUB_REF="refs/heads/super-awesome-python"
|
export GITHUB_REF="refs/heads/super-awesome-python"
|
||||||
export short_ref="$(git rev-parse --short HEAD | sed 's/0*//')"
|
export short_ref="$(git rev-parse --short HEAD | sed 's/0*//')"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -265,7 +274,7 @@ function init_repo {
|
|||||||
export GITHUB_REF="refs/heads/super-awesome-python"
|
export GITHUB_REF="refs/heads/super-awesome-python"
|
||||||
export short_ref="$(git rev-parse --short HEAD | sed 's/0*//')"
|
export short_ref="$(git rev-parse --short HEAD | sed 's/0*//')"
|
||||||
|
|
||||||
run ../../version-increment.sh
|
run version-increment.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
|
|||||||
@@ -5,6 +5,15 @@ load helper_print-info
|
|||||||
|
|
||||||
export repo=".tmp_testing/repo"
|
export repo=".tmp_testing/repo"
|
||||||
|
|
||||||
|
setup() {
|
||||||
|
# get the containing directory of this file
|
||||||
|
# use $BATS_TEST_FILENAME instead of ${BASH_SOURCE[0]} or $0,
|
||||||
|
# as those will point to the bats executable's location or the preprocessed file respectively
|
||||||
|
DIR="$( cd "$( dirname "$BATS_TEST_FILENAME" )" >/dev/null 2>&1 && pwd )"
|
||||||
|
# make executables in src/ visible to PATH
|
||||||
|
PATH="$DIR/../:$PATH"
|
||||||
|
}
|
||||||
|
|
||||||
function init_repo {
|
function init_repo {
|
||||||
rm -rf "${repo}" &&
|
rm -rf "${repo}" &&
|
||||||
mkdir -p "${repo}" &&
|
mkdir -p "${repo}" &&
|
||||||
@@ -22,7 +31,7 @@ function init_repo {
|
|||||||
|
|
||||||
export scheme="foover"
|
export scheme="foover"
|
||||||
|
|
||||||
run ../../version-lookup.sh
|
run version-lookup.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 8 ] &&
|
[ "$status" -eq 8 ] &&
|
||||||
@@ -43,7 +52,7 @@ function init_repo {
|
|||||||
git tag 0.1.1
|
git tag 0.1.1
|
||||||
git tag 0.1.2
|
git tag 0.1.2
|
||||||
|
|
||||||
run ../../version-lookup.sh
|
run version-lookup.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -55,7 +64,7 @@ function init_repo {
|
|||||||
|
|
||||||
git tag 0.1.2
|
git tag 0.1.2
|
||||||
|
|
||||||
run ../../version-lookup.sh
|
run version-lookup.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -69,7 +78,7 @@ function init_repo {
|
|||||||
git tag 1.2.300
|
git tag 1.2.300
|
||||||
git tag 1.2.301-dev.234
|
git tag 1.2.301-dev.234
|
||||||
|
|
||||||
run ../../version-lookup.sh
|
run version-lookup.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -79,7 +88,7 @@ function init_repo {
|
|||||||
@test "returns 0.0.0 if no normal version detected" {
|
@test "returns 0.0.0 if no normal version detected" {
|
||||||
init_repo
|
init_repo
|
||||||
|
|
||||||
run ../../version-lookup.sh
|
run version-lookup.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -91,7 +100,7 @@ function init_repo {
|
|||||||
|
|
||||||
git tag 0.0.1-dev.999
|
git tag 0.0.1-dev.999
|
||||||
|
|
||||||
run ../../version-lookup.sh
|
run version-lookup.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -103,7 +112,7 @@ function init_repo {
|
|||||||
|
|
||||||
export scheme="calver"
|
export scheme="calver"
|
||||||
|
|
||||||
run ../../version-lookup.sh
|
run version-lookup.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
@@ -115,7 +124,7 @@ function init_repo {
|
|||||||
|
|
||||||
git tag v3.4.5
|
git tag v3.4.5
|
||||||
|
|
||||||
run ../../version-lookup.sh
|
run version-lookup.sh
|
||||||
|
|
||||||
print_run_info
|
print_run_info
|
||||||
[ "$status" -eq 0 ] &&
|
[ "$status" -eq 0 ] &&
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ fi
|
|||||||
if [[ -z "${current_version:-}" ]] ; then
|
if [[ -z "${current_version:-}" ]] ; then
|
||||||
echo "🛑 Environment variable 'current_version' is unset or empty" 1>&2
|
echo "🛑 Environment variable 'current_version' is unset or empty" 1>&2
|
||||||
input_errors='true'
|
input_errors='true'
|
||||||
elif [[ -z "$(echo "${current_version}" | ${grep} -P "${pcre_master_ver}")" ]] ; then
|
elif [[ -z "$(echo "${current_version}" | grep_p "${pcre_master_ver}")" ]] ; then
|
||||||
echo "🛑 Environment variable 'current_version' is not a valid normal version (M.m.p)" 1>&2
|
echo "🛑 Environment variable 'current_version' is not a valid normal version (M.m.p)" 1>&2
|
||||||
input_errors='true'
|
input_errors='true'
|
||||||
fi
|
fi
|
||||||
@@ -43,7 +43,7 @@ elif [[ -z "${BATS_VERSION:-}" ]] ; then
|
|||||||
| jq -r '.default_branch'
|
| jq -r '.default_branch'
|
||||||
)"
|
)"
|
||||||
else
|
else
|
||||||
default_branch="$(git remote show origin | ${grep} 'HEAD branch' | cut -d ' ' -f 5)"
|
default_branch="$(git remote show origin | grep 'HEAD branch' | cut -d ' ' -f 5)"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -67,13 +67,13 @@ if [[ "${scheme}" == 'conventional_commits' ]] ; then
|
|||||||
|
|
||||||
# Check commit message header
|
# Check commit message header
|
||||||
found_match='false'
|
found_match='false'
|
||||||
if [[ -n "$(echo "${commit_message}" | ${grep} -P "${pcre_conventional_commit_breaking}")" ]] ; then
|
if [[ -n "$(echo "${commit_message}" | grep_p "${pcre_conventional_commit_breaking}")" ]] ; then
|
||||||
increment='major'
|
increment='major'
|
||||||
found_match='true'
|
found_match='true'
|
||||||
elif [[ -n "$(echo "${commit_message}" | ${grep} -P "${pcre_conventional_commit_minor}")" ]] ; then
|
elif [[ -n "$(echo "${commit_message}" | grep_p "${pcre_conventional_commit_minor}")" ]] ; then
|
||||||
increment='minor'
|
increment='minor'
|
||||||
found_match='true'
|
found_match='true'
|
||||||
elif [[ -n "$(echo "${commit_message}" | ${grep} -P "${pcre_conventional_commit_patch}")" ]] ; then
|
elif [[ -n "$(echo "${commit_message}" | grep_p "${pcre_conventional_commit_patch}")" ]] ; then
|
||||||
increment='patch'
|
increment='patch'
|
||||||
found_match='true'
|
found_match='true'
|
||||||
fi
|
fi
|
||||||
@@ -128,7 +128,7 @@ if [[ "${current_ref}" != "refs/heads/${default_branch}" ]] ; then
|
|||||||
echo "PRE_RELEASE_LABEL=${pre_release}" >> "${GITHUB_OUTPUT}"
|
echo "PRE_RELEASE_LABEL=${pre_release}" >> "${GITHUB_OUTPUT}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -z "$(echo "${new_version}" | ${grep} -P "${pcre_semver}")" ]] ; then
|
if [[ -z "$(echo "${new_version}" | grep_p "${pcre_semver}")" ]] ; then
|
||||||
echo "🛑 Version incrementing has failed to produce a semver compliant version" 1>&2
|
echo "🛑 Version incrementing has failed to produce a semver compliant version" 1>&2
|
||||||
echo "ℹ️ See: https://semver.org/spec/v2.0.0.html" 1>&2
|
echo "ℹ️ See: https://semver.org/spec/v2.0.0.html" 1>&2
|
||||||
echo "ℹ️ Failed version string: '${new_version}'" 1>&2
|
echo "ℹ️ Failed version string: '${new_version}'" 1>&2
|
||||||
|
|||||||
@@ -32,12 +32,12 @@ if [[ "${use_api:-}" == 'true' ]] ; then
|
|||||||
-H "X-GitHub-Api-Version: 2022-11-28" \
|
-H "X-GitHub-Api-Version: 2022-11-28" \
|
||||||
"${GITHUB_API_URL}/repos/${GITHUB_REPOSITORY}/git/matching-refs/tags/" \
|
"${GITHUB_API_URL}/repos/${GITHUB_REPOSITORY}/git/matching-refs/tags/" \
|
||||||
| jq -r '.[].ref' | sed 's|refs/tags/||g' \
|
| jq -r '.[].ref' | sed 's|refs/tags/||g' \
|
||||||
| { ${grep} -P "${pcre_allow_vprefix}" || true; } | sed 's/^v//g' | sort -V | tail -n 1
|
| { grep_p "${pcre_allow_vprefix}" || true; } | sed 's/^v//g' | sort -V | tail -n 1
|
||||||
)"
|
)"
|
||||||
else
|
else
|
||||||
current_version="$(
|
current_version="$(
|
||||||
git tag -l \
|
git tag -l \
|
||||||
| { ${grep} -P "${pcre_allow_vprefix}" || true; } | sed 's/^v//g' | sort -V | tail -n 1
|
| { grep_p "${pcre_allow_vprefix}" || true; } | sed 's/^v//g' | sort -V | tail -n 1
|
||||||
)"
|
)"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user