diff --git a/ci/channel-info.sh b/ci/channel-info.sh index 270cc8c9e..c82806454 100755 --- a/ci/channel-info.sh +++ b/ci/channel-info.sh @@ -105,11 +105,18 @@ if [[ -z "$CHANNEL" ]]; then fi fi +if [[ $CHANNEL = beta ]]; then + CHANNEL_LATEST_TAG="$BETA_CHANNEL_LATEST_TAG" +elif [[ $CHANNEL = stable ]]; then + CHANNEL_LATEST_TAG="$STABLE_CHANNEL_LATEST_TAG" +fi + echo EDGE_CHANNEL="$EDGE_CHANNEL" echo BETA_CHANNEL="$BETA_CHANNEL" echo BETA_CHANNEL_LATEST_TAG="$BETA_CHANNEL_LATEST_TAG" echo STABLE_CHANNEL="$STABLE_CHANNEL" echo STABLE_CHANNEL_LATEST_TAG="$STABLE_CHANNEL_LATEST_TAG" echo CHANNEL="$CHANNEL" +echo CHANNEL_LATEST_TAG="$CHANNEL_LATEST_TAG" exit 0 diff --git a/ci/test-sanity.sh b/ci/test-sanity.sh index cc98a2dfe..c4dd244bb 100755 --- a/ci/test-sanity.sh +++ b/ci/test-sanity.sh @@ -25,4 +25,29 @@ echo _ ci/nits.sh _ ci/check-ssh-keys.sh + +# Ensure the current channel version is not equal ("greater") than +# the version of the latest tag +if [[ -z $CI_TAG ]]; then + echo "--- channel version check" + ( + eval "$(ci/channel-info.sh)" + + if [[ -n $CHANNEL_LATEST_TAG ]]; then + source scripts/read-cargo-variable.sh + + version=$(readCargoVariable version "version/Cargo.toml") + echo "version: v$version" + echo "latest channel tag: $CHANNEL_LATEST_TAG" + + if [[ $CHANNEL_LATEST_TAG = v$version ]]; then + echo "Error: please run ./scripts/increment-cargo-version.sh" + exit 1 + fi + else + echo "Skipped. CHANNEL_LATEST_TAG (CHANNEL=$CHANNEL) unset" + fi + ) +fi + echo --- ok