diff options
Diffstat (limited to 'desktop/scripts')
| -rwxr-xr-x | desktop/scripts/release/4-make-release | 44 |
1 files changed, 30 insertions, 14 deletions
diff --git a/desktop/scripts/release/4-make-release b/desktop/scripts/release/4-make-release index 4514d27c7e..d3ba66a753 100755 --- a/desktop/scripts/release/4-make-release +++ b/desktop/scripts/release/4-make-release @@ -9,16 +9,25 @@ set -eu SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" cd "$SCRIPT_DIR" -REPO_ROOT=../../../ -PRODUCT_VERSION_PATH=$REPO_ROOT/dist-assets/desktop-product-version.txt -PRODUCT_VERSION=$(cat $PRODUCT_VERSION_PATH) +if [ $# -lt 1 ]; then + echo "Please provide the following arguments:" + echo " $(basename "$0") <product version>" + exit 1 +fi -$REPO_ROOT/scripts/utils/gh-ready-check +# Duplicated from /scripts/utils/gh-ready-check +if ! command -v gh > /dev/null; then + echo "gh (GitHub CLI) is required to run this script" + exit 1 +fi +if ! gh auth status > /dev/null; then + echo "Authentication through gh (GitHub CLI) is required to run this script" + exit 1 +fi + +PRODUCT_VERSION=$1 -REPO_URL="git@github.com:mullvad/mullvadvpn-app" ARTIFACT_DIR="./artifacts" -REPO_DIR=$(mktemp -d) -CHANGELOG_PATH="$REPO_DIR/CHANGELOG.md" URL_BASE="https://releases.mullvad.net/desktop/releases" rm -rf $ARTIFACT_DIR @@ -45,7 +54,7 @@ function download_and_verify { exit 1 fi echo "" - echo "GOOD SIGNATURE IN $pkg_filename" + echo "GOOD SIGNATURE FOR $pkg_filename" echo "" done } @@ -89,22 +98,29 @@ function publish_metadata { } function publish_release { - echo ">>> Cloning repository to extract changelog" - git clone --depth 1 --branch "$PRODUCT_VERSION" $REPO_URL "$REPO_DIR" 2> /dev/null > /dev/null - (cd "$REPO_DIR" && git verify-tag "$PRODUCT_VERSION") - echo "" + echo ">>> Downloading changelog" + local changelog_path + changelog_path=$(mktemp) + curl -o "$changelog_path" --progress-bar \ + "https://raw.githubusercontent.com/mullvad/mullvadvpn-app/refs/tags/$PRODUCT_VERSION/CHANGELOG.md" changelog_end_version_pattern="20[0-9]\{2\}\.[0-9]\{1,2\}" if [[ $PRODUCT_VERSION == *-beta* ]]; then changelog_end_version_pattern=".*" fi - changelog_extract=$(sed -n "/^## \[$PRODUCT_VERSION\]/,/^## \[$changelog_end_version_pattern\]/p" "$CHANGELOG_PATH") + changelog_extract=$(sed -n "/^## \[$PRODUCT_VERSION\]/,/^## \[$changelog_end_version_pattern\]/p" "$changelog_path") changelog=$(echo "$changelog_extract" | sed '$d' | \ awk 'NF { last = last ? last ORS $0 : $0 } END { print last }') - release_flags=( --draft --verify-tag --notes-file - --title "$PRODUCT_VERSION" ) + release_flags=( + --draft + --repo "git@github.com:mullvad/mullvadvpn-app" + --verify-tag + --notes-file - + --title "$PRODUCT_VERSION" + ) previous_release=$(echo "$changelog_extract" | tail -1 | grep -oP '## \[\K[^\]]+') |
