mirror of
https://github.com/rustfs/rustfs.git
synced 2026-08-05 12:57:42 +00:00
test(ci): cover Helm chart version mapping (#2751)
This commit is contained in:
@@ -69,24 +69,7 @@ jobs:
|
||||
;;
|
||||
esac
|
||||
|
||||
VERSION="$RAW_TAG"
|
||||
case "$VERSION" in
|
||||
v*)
|
||||
VERSION="${VERSION#v}"
|
||||
;;
|
||||
esac
|
||||
|
||||
APP_VERSION="${RAW_TAG#v}"
|
||||
BETA_NUM=$(echo "$APP_VERSION" | sed -n -E 's/^.*-beta\.([0-9]+)$/\1/p')
|
||||
if [ -n "$BETA_NUM" ]; then
|
||||
CHART_VERSION="0.${BETA_NUM}.0"
|
||||
else
|
||||
CHART_VERSION="$APP_VERSION"
|
||||
fi
|
||||
|
||||
echo "raw_tag=$RAW_TAG" >> "$GITHUB_OUTPUT"
|
||||
echo "app_version=$APP_VERSION" >> "$GITHUB_OUTPUT"
|
||||
echo "chart_version=$CHART_VERSION" >> "$GITHUB_OUTPUT"
|
||||
./scripts/helm_chart_version.sh "$RAW_TAG"
|
||||
|
||||
- name: Replace chart version and app version
|
||||
run: |
|
||||
|
||||
Executable
+37
@@ -0,0 +1,37 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
if [ "$#" -ne 1 ]; then
|
||||
echo "usage: $0 <tag-or-ref>" >&2
|
||||
exit 2
|
||||
fi
|
||||
|
||||
RAW="$1"
|
||||
case "$RAW" in
|
||||
refs/tags/*)
|
||||
RAW_TAG="${RAW#refs/tags/}"
|
||||
;;
|
||||
*)
|
||||
RAW_TAG="$RAW"
|
||||
;;
|
||||
esac
|
||||
|
||||
APP_VERSION="${RAW_TAG#v}"
|
||||
BETA_NUM=$(printf '%s\n' "$APP_VERSION" | sed -n -E 's/^.*-beta\.([0-9]+)$/\1/p')
|
||||
if [ -n "$BETA_NUM" ]; then
|
||||
CHART_VERSION="0.${BETA_NUM}.0"
|
||||
else
|
||||
CHART_VERSION="$APP_VERSION"
|
||||
fi
|
||||
|
||||
if [ -n "${GITHUB_OUTPUT:-}" ]; then
|
||||
{
|
||||
echo "raw_tag=$RAW_TAG"
|
||||
echo "app_version=$APP_VERSION"
|
||||
echo "chart_version=$CHART_VERSION"
|
||||
} >>"$GITHUB_OUTPUT"
|
||||
else
|
||||
printf 'raw_tag=%s\n' "$RAW_TAG"
|
||||
printf 'app_version=%s\n' "$APP_VERSION"
|
||||
printf 'chart_version=%s\n' "$CHART_VERSION"
|
||||
fi
|
||||
Executable
+26
@@ -0,0 +1,26 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
ROOT_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)
|
||||
SCRIPT="$ROOT_DIR/scripts/helm_chart_version.sh"
|
||||
|
||||
assert_version() {
|
||||
local raw="$1"
|
||||
local expected_raw_tag="$2"
|
||||
local expected_app_version="$3"
|
||||
local expected_chart_version="$4"
|
||||
local output
|
||||
|
||||
output=$(mktemp)
|
||||
GITHUB_OUTPUT="$output" "$SCRIPT" "$raw"
|
||||
|
||||
grep -qx "raw_tag=$expected_raw_tag" "$output"
|
||||
grep -qx "app_version=$expected_app_version" "$output"
|
||||
grep -qx "chart_version=$expected_chart_version" "$output"
|
||||
|
||||
rm -f "$output"
|
||||
}
|
||||
|
||||
assert_version "refs/tags/v1.0.0-beta.12" "v1.0.0-beta.12" "1.0.0-beta.12" "0.12.0"
|
||||
assert_version "v1.0.0" "v1.0.0" "1.0.0" "1.0.0"
|
||||
assert_version "refs/tags/1.0.0" "1.0.0" "1.0.0" "1.0.0"
|
||||
Reference in New Issue
Block a user