[gnome-initial-setup] build: Automate tagging and pushing release
- From: Will Thompson <wjt src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-initial-setup] build: Automate tagging and pushing release
- Date: Sat, 25 Apr 2020 20:42:09 +0000 (UTC)
commit e2ccc8f68cde84713ec6819d03e648a84da518d9
Author: Will Thompson <wjt endlessm com>
Date: Sat Apr 25 21:28:48 2020 +0100
build: Automate tagging and pushing release
Gradually automating https://wiki.gnome.org/MaintainersCorner/Releasing
from the bottom up.
build-aux/maintainer-upload-release | 31 +++++++++++++++++++++++++------
build-aux/meson.build | 3 ++-
2 files changed, 27 insertions(+), 7 deletions(-)
---
diff --git a/build-aux/maintainer-upload-release b/build-aux/maintainer-upload-release
index f533600..8da13d2 100755
--- a/build-aux/maintainer-upload-release
+++ b/build-aux/maintainer-upload-release
@@ -1,7 +1,26 @@
#!/bin/bash
-set -e
-tarball="${1:?tarball filename is required}"
-cd "${MESON_BUILD_ROOT}/meson-dist"
-[[ -e "$tarball" ]]
-scp "$tarball" master.gnome.org:
-ssh master.gnome.org ftpadmin install "$tarball"
+set -ex
+: "${MESON_BUILD_ROOT:?}"
+: "${MESON_SOURCE_ROOT:?}"
+project_name="${1:?project name is required}"
+project_version="${2:?project version is required}"
+tarball_basename="${project_name}-${project_version}.tar.xz"
+tarball_path="${MESON_BUILD_ROOT}/meson-dist/${tarball_basename}"
+[[ -e "$tarball_path" ]] # ninja dist must have been successful
+
+gnome_series=${project_version%.*}
+expected_branch=gnome-${gnome_series/./-}
+
+pushd "$MESON_SOURCE_ROOT"
+ branch=$(git rev-parse --abbrev-ref HEAD)
+ if [[ "$branch" != "master" ]] && [[ "$branch" != "$expected_branch" ]]; then
+ echo "Project version $project_version does not match branch $branch" >&2
+ exit 1
+ fi
+ git tag -s "$project_version" -m "Version $project_version"
+ git push --atomic origin "$branch" "$project_version"
+popd
+
+scp "$tarball_path" master.gnome.org:
+# shellcheck disable=SC2029
+ssh master.gnome.org ftpadmin install "$tarball_basename"
diff --git a/build-aux/meson.build b/build-aux/meson.build
index 04ce5de..ab4cbea 100644
--- a/build-aux/meson.build
+++ b/build-aux/meson.build
@@ -1,3 +1,4 @@
run_target('maintainer-upload-release',
command: ['maintainer-upload-release',
- '@0@-@1 tar xz'.format(meson.project_name(), meson.project_version())])
+ meson.project_name(),
+ meson.project_version()])
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]