@@ -11,37 +11,37 @@ SED_INPLACE='sed -i.bak'
11
11
trap ' rm checksums.txt **/*.bak &>/dev/null' EXIT
12
12
13
13
usage () {
14
- echo " Usage: $0 <VERSION> [<FORMULA_PATH>]"
15
- echo " Updates the Spin Formula for the specified release version"
16
- echo " Example: $0 v3.0.0"
14
+ echo " Usage: $0 <VERSION> [<FORMULA_PATH>]"
15
+ echo " Updates the Spin Formula for the specified release version"
16
+ echo " Example: $0 v3.0.0"
17
17
}
18
18
19
- if [ $# -ne 1 ]; then
20
- usage
21
- exit 1
19
+ if [[ $# -ne 1 ] ]; then
20
+ usage
21
+ exit 1
22
22
fi
23
23
24
24
# Ensure version is prefixed with 'v' and an 'official' release
25
25
if [[ ! " ${VERSION} " =~ ^v[0-9]+.[0-9]+.[0-9]+$ ]]; then
26
- echo " VERSION doesn't match v[0-9]+.[0-9]+.[0-9]+ and may be a prerelease; skipping."
27
- exit 1
26
+ echo " VERSION doesn't match v[0-9]+.[0-9]+.[0-9]+ and may be a prerelease; skipping."
27
+ exit 1
28
28
fi
29
29
30
30
# Get the checksum file for the release
31
- wget -qO checksums.txt " https://github.com/fermyon/spin/releases/download/$VERSION /checksums-$VERSION .txt" || \
32
- (echo " Checksum file not found for version $VERSION " && exit 1)
31
+ wget -qO checksums.txt " https://github.com/fermyon/spin/releases/download/${ VERSION} /checksums-${ VERSION} .txt" ||
32
+ (echo " Checksum file not found for version ${ VERSION} " && exit 1)
33
33
34
34
# Remove the 'v' prefix from the version
35
35
ERSION=" ${VERSION: 1} "
36
- $SED_INPLACE -e " s/version \" [^\" ]*\" /version \" $ERSION \" /" $ FORMULA
36
+ ${ SED_INPLACE} -e " s/version \" [^\" ]*\" /version \" ${ ERSION} \" /" " ${ FORMULA} "
37
37
# Update the sha256 checksums for each OS/Arch
38
38
while read -r line; do
39
- filename=$( echo " $line " | awk ' {print $2}' )
40
- sha256=$( echo " $line " | awk ' {print $1}' )
41
- os_arch=$( echo $ {filename} | sed " s/ spin-v${ERSION} -//g " )
42
- if grep -q " $os_arch " $ FORMULA; then
43
- $ SED_INPLACE -E " /url \" .*$os_arch \" / { n; s/sha256 \" [^\" ]*\" /sha256 \" $sha256 \" /; }" $ FORMULA
44
- fi
45
- done < checksums.txt
46
-
47
- echo " Formula updated to version $VERSION with new checksums."
39
+ filename=$( echo " ${ line} " | awk ' {print $2}' )
40
+ sha256=$( echo " ${ line} " | awk ' {print $1}' )
41
+ os_arch=" $ {filename// spin-v${ERSION} -/ } "
42
+ if grep -q " ${ os_arch} " " ${ FORMULA} " ; then
43
+ ${ SED_INPLACE} -E " /url \" .*${ os_arch} \" / { n; s/sha256 \" [^\" ]*\" /sha256 \" ${ sha256} \" /; }" " ${ FORMULA} "
44
+ fi
45
+ done < checksums.txt
46
+
47
+ echo " Formula updated to version ${ VERSION} with new checksums."
0 commit comments