summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOskar <oskar@mullvad.net>2025-04-25 14:18:44 +0200
committerOskar <oskar@mullvad.net>2025-06-27 07:21:38 +0200
commit4f2a4ee0887999cb7152dc44b46568756ed15627 (patch)
tree288c3b2be24bca01cf5834ec380c4637d0e20e21
parent30acc3e862e376e34b8468a867366d3430bfee9d (diff)
downloadmullvadvpn-4f2a4ee0887999cb7152dc44b46568756ed15627.tar.xz
mullvadvpn-4f2a4ee0887999cb7152dc44b46568756ed15627.zip
Automate publishing of linux repositoriesautomate-publishing-of-linux-repositories
-rw-r--r--desktop/scripts/release/5-metadata-and-repositories6
-rwxr-xr-xdesktop/scripts/release/publish-metadata-to-api11
-rw-r--r--desktop/scripts/release/publish-repositories20
-rw-r--r--desktop/scripts/release/run-on-buildserver14
-rwxr-xr-xdesktop/scripts/release/update-and-publish-metadata (renamed from desktop/scripts/release/5-update-and-publish-metadata)0
5 files changed, 41 insertions, 10 deletions
diff --git a/desktop/scripts/release/5-metadata-and-repositories b/desktop/scripts/release/5-metadata-and-repositories
new file mode 100644
index 0000000000..919b4e0a98
--- /dev/null
+++ b/desktop/scripts/release/5-metadata-and-repositories
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+
+set -eu
+
+./update-and-publish-metadata "$@"
+./publish-repositories "$1" "$2"
diff --git a/desktop/scripts/release/publish-metadata-to-api b/desktop/scripts/release/publish-metadata-to-api
index 02649e67d0..d93a4907c6 100755
--- a/desktop/scripts/release/publish-metadata-to-api
+++ b/desktop/scripts/release/publish-metadata-to-api
@@ -21,19 +21,10 @@ BUILDSERVER_TMP_DIR="/tmp/desktop-upload-release"
BUILDSERVER_METADATA_DIR="$BUILDSERVER_TMP_DIR/metadata"
METADATA_SERVER_METADATA_DIR="desktop/metadata"
-BUILDSERVER_BUILDUSER="build"
-
RSYNC_OPTIONS=(-av --mkpath)
METADATA_SERVER_RSYNC_OPTIONS=("${RSYNC_OPTIONS[@]}" '--rsh="ssh -p 1122"')
-function run_on_build_server {
- # shellcheck disable=SC2029
- ssh "$BUILD_SERVER_HOST" "$@"
-}
-
-function run_on_build_server_as_build_user {
- run_on_build_server sudo -i -u "$BUILDSERVER_BUILDUSER" "$@"
-}
+source ./run-on-buildserver
function local_rsync {
rsync "${RSYNC_OPTIONS[@]}" "$@"
diff --git a/desktop/scripts/release/publish-repositories b/desktop/scripts/release/publish-repositories
new file mode 100644
index 0000000000..22583acef4
--- /dev/null
+++ b/desktop/scripts/release/publish-repositories
@@ -0,0 +1,20 @@
+#!/usr/bin/env bash
+
+set -eu
+
+if [ $# -ne 2 ]; then
+ echo "Please provide the following arguments:"
+ echo " $(basename "$0") \\"
+ echo " <product version> \\"
+ echo " <build server SSH destination> \\"
+ exit 1
+fi
+
+PRODUCT_VERSION=$1
+BUILD_SERVER_HOST=$2
+
+source ./run-on-buildserver
+
+run_on_build_server_as_build_user \
+ ./autobuild-linux/publish-app-to-repositories.sh --production \
+ "autobuild-linux/artifacts/$PRODUCT_VERSION" "$PRODUCT_VERSION"
diff --git a/desktop/scripts/release/run-on-buildserver b/desktop/scripts/release/run-on-buildserver
new file mode 100644
index 0000000000..783fb59833
--- /dev/null
+++ b/desktop/scripts/release/run-on-buildserver
@@ -0,0 +1,14 @@
+#!/usr/bin/env bash
+
+set -eu
+
+BUILDSERVER_BUILDUSER="build"
+
+function run_on_build_server {
+ # shellcheck disable=SC2029
+ ssh "$BUILD_SERVER_HOST" "$@"
+}
+
+function run_on_build_server_as_build_user {
+ run_on_build_server sudo -i -u "$BUILDSERVER_BUILDUSER" "$@"
+}
diff --git a/desktop/scripts/release/5-update-and-publish-metadata b/desktop/scripts/release/update-and-publish-metadata
index 1019c49c2b..1019c49c2b 100755
--- a/desktop/scripts/release/5-update-and-publish-metadata
+++ b/desktop/scripts/release/update-and-publish-metadata