mirror of
https://github.com/meilisearch/MeiliSearch
synced 2024-11-22 21:04:27 +01:00
Merge #3799
3799: Fix error messages in `check-release.sh` r=curquiza a=vvv - `check_tag`: Report file name correctly. Use named variables. - Introduce `read_version` helper function. Simplify the implementation. - Show meaningful error message if `GITHUB_REF` is not set or its format is incorrect. Co-authored-by: Valeriy V. Vorotyntsev <valery.vv@gmail.com>
This commit is contained in:
commit
28404d56b7
43
.github/scripts/check-release.sh
vendored
43
.github/scripts/check-release.sh
vendored
@ -1,24 +1,41 @@
|
|||||||
#!/bin/bash
|
#!/usr/bin/env bash
|
||||||
|
set -eu -o pipefail
|
||||||
|
|
||||||
# check_tag $current_tag $file_tag $file_name
|
check_tag() {
|
||||||
function check_tag {
|
local expected=$1
|
||||||
if [[ "$1" != "$2" ]]; then
|
local actual=$2
|
||||||
echo "Error: the current tag does not match the version in Cargo.toml: found $2 - expected $1"
|
local filename=$3
|
||||||
ret=1
|
|
||||||
|
if [[ $actual != $expected ]]; then
|
||||||
|
echo >&2 "Error: the current tag does not match the version in $filename: found $actual, expected $expected"
|
||||||
|
return 1
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
read_version() {
|
||||||
|
grep '^version = ' | cut -d \" -f 2
|
||||||
|
}
|
||||||
|
|
||||||
|
if [[ -z "${GITHUB_REF:-}" ]]; then
|
||||||
|
echo >&2 "Error: GITHUB_REF is not set"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ ! "$GITHUB_REF" =~ ^refs/tags/v[0-9]+\.[0-9]+\.[0-9]+(-[a-z0-9]+)?$ ]]; then
|
||||||
|
echo >&2 "Error: GITHUB_REF is not a valid tag: $GITHUB_REF"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
current_tag=${GITHUB_REF#refs/tags/v}
|
||||||
ret=0
|
ret=0
|
||||||
current_tag=${GITHUB_REF#'refs/tags/v'}
|
|
||||||
|
|
||||||
file_tag="$(grep '^version = ' Cargo.toml | cut -d '=' -f 2 | tr -d '"' | tr -d ' ')"
|
toml_tag="$(cat Cargo.toml | read_version)"
|
||||||
check_tag $current_tag $file_tag
|
check_tag "$current_tag" "$toml_tag" Cargo.toml || ret=1
|
||||||
|
|
||||||
lock_file='Cargo.lock'
|
lock_tag=$(grep -A 1 '^name = "meilisearch-auth"' Cargo.lock | read_version)
|
||||||
lock_tag=$(grep -A 1 'name = "meilisearch-auth"' $lock_file | grep version | cut -d '=' -f 2 | tr -d '"' | tr -d ' ')
|
check_tag "$current_tag" "$lock_tag" Cargo.lock || ret=1
|
||||||
check_tag $current_tag $lock_tag $lock_file
|
|
||||||
|
|
||||||
if [[ "$ret" -eq 0 ]] ; then
|
if (( ret == 0 )); then
|
||||||
echo 'OK'
|
echo 'OK'
|
||||||
fi
|
fi
|
||||||
exit $ret
|
exit $ret
|
||||||
|
Loading…
Reference in New Issue
Block a user