From 0a275ab34f8be2f898b8b9220517d75a165b3a32 Mon Sep 17 00:00:00 2001 From: David Ko Date: Fri, 22 Jul 2022 16:37:08 +0800 Subject: [PATCH] Add update-manifests-dev-version.sh Signed-off-by: David Ko --- ...horm-yaml.sh => generate-longhorn-yaml.sh} | 0 scripts/update-manifests-dev-version.sh | 39 +++++++++++++++++++ 2 files changed, 39 insertions(+) rename scripts/{generate-longhorm-yaml.sh => generate-longhorn-yaml.sh} (100%) create mode 100755 scripts/update-manifests-dev-version.sh diff --git a/scripts/generate-longhorm-yaml.sh b/scripts/generate-longhorn-yaml.sh similarity index 100% rename from scripts/generate-longhorm-yaml.sh rename to scripts/generate-longhorn-yaml.sh diff --git a/scripts/update-manifests-dev-version.sh b/scripts/update-manifests-dev-version.sh new file mode 100755 index 0000000..65a6ae8 --- /dev/null +++ b/scripts/update-manifests-dev-version.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash + +# Example: +# ./scripts/update-manifests-dev-version.sh 1.3.0 1.4.0 +# +# Result: +# Chart version will be updated to 1.4.0-dev +# Images (manager, engine, ui) will be updated to master-head +# + +set -o errexit +set -o nounset + +PRJ_DIR=$(readlink -f "$(dirname "${BASH_SOURCE[0]}")/.." 2>/dev/null || realpath "$(dirname "${BASH_SOURCE[0]}")/.." 2>/dev/null) +CURRENT_VERSION=${CURRENT_VERSION:-$1} +NEW_VERSION=${NEW_VERSION:-$2}-dev + +mapfile -t manifests < <(find "$PRJ_DIR" -type f -a \( -name '*.yaml' -o -name 'longhorn-images.txt' \)) + +if [[ ${#manifests[@]} -le 0 ]]; then + echo "No manifests found to update from $PRJ_DIR" >/dev/stderr + exit 1 +fi + +echo "Updating $CURRENT_VERSION -> $NEW_VERSION-dev with master-head images in below manifests" +for f in "${manifests[@]}"; do + f_name=$(basename "$f") + + if [[ $f_name == "Chart.yaml" ]]; then + sed -i "s#\(version: \)${CURRENT_VERSION}#\1${NEW_VERSION}#g" "$f" + sed -i "s#\(appVersion: v\)${CURRENT_VERSION}#\1${NEW_VERSION}#g" "$f" + else + sed -i "s#\(:\s*\)v${CURRENT_VERSION}#\1master-head#g" "$f" + fi + + echo "$f updated" +done + +. "$PRJ_DIR"/scripts/generate-longhorn-yaml.sh \ No newline at end of file