v29.4-roots.4 · Commit 7: [PATCH 07/37] release: establish Roots maintenance and assurance
ci/release/validate-release-tag.sh
Before: /dev/null · After: ci/release/validate-release-tag.sh
File metadata
new file mode 100755 index 0000000000000000000000000000000000000000..700d3f51a7a73327ab338bb898174acea103c862
Download original patch · Release notes
Diff rows 1–22 of 22. Line numbers refer to the original before/after files.
+ Added− RemovedUnmarked lines are context.
Scroll the code area horizontally to read long lines. The two line-number columns refer to before and after.
ci/release/validate-release-tag.sh
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# Copyright (c) 2026-present The Bitcoin Roots developers
|
|
3
|
+
# Distributed under the MIT software license, see the accompanying
|
|
4
|
+
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
5
|
+
|
|
6
|
+
export LC_ALL=C
|
|
7
|
+
set -Eeuo pipefail
|
|
8
|
+
|
|
9
|
+
if [[ "$#" -ne 1 ]]; then
|
|
10
|
+
printf 'Usage: %s RELEASE_TAG\n' "$0" >&2
|
|
11
|
+
exit 2
|
|
12
|
+
fi
|
|
13
|
+
|
|
14
|
+
release_tag=$1
|
|
15
|
+
if [[ ! "$release_tag" =~ ^v[0-9]+\.[0-9]+(\.[0-9]+|rc[0-9]+)?-roots\.[1-9][0-9]*$ ]]; then
|
|
16
|
+
printf 'Release tag must be a Roots version tag: %s\n' "$release_tag" >&2
|
|
17
|
+
exit 1
|
|
18
|
+
fi
|
|
19
|
+
if ! git check-ref-format "refs/tags/$release_tag"; then
|
|
20
|
+
printf 'Release tag is not a valid Git tag name: %s\n' "$release_tag" >&2
|
|
21
|
+
exit 1
|
|
22
|
+
fi
|