summaryrefslogtreecommitdiff
path: root/script/update/release
diff options
context:
space:
mode:
authorLeah Rowe <leah@libreboot.org>2023-12-11 05:21:27 +0000
committerLeah Rowe <leah@libreboot.org>2023-12-11 05:21:27 +0000
commit2e779a54951406247197cf21a31c54a36ec1fa06 (patch)
tree381d1b71893bcbeae5f7029379174cbe31c97a1a /script/update/release
parent9558e2fce790b044c33c54dfc58780a66e98b770 (diff)
handle errors on exits from subshells
most of these are probably redundant, and will never be called, but lbmk needs to be as safe as possible under fault conditions. fail early, fail hard. Signed-off-by: Leah Rowe <leah@libreboot.org>
Diffstat (limited to 'script/update/release')
-rwxr-xr-xscript/update/release18
1 files changed, 9 insertions, 9 deletions
diff --git a/script/update/release b/script/update/release
index dcddb44c..447d93ce 100755
--- a/script/update/release
+++ b/script/update/release
@@ -50,11 +50,11 @@ build_release()
cd "${srcdir}" || err "${_xm}: !cd \"${srcdir}\""
fetch_trees
x_ mv src/docs docs
- )
+ ) || err "can't copy docs"
(
cd "${srcdir%/*}" || err "${_xm}: mktarball \"${srcdir}\""
mktarball "${srcdir##*/}" "${srcdir##*/}.tar.xz" || err "${_xm}: mksrc"
- )
+ ) || err "can't create pre-crossgcc src tarball"
[ "${mode}" = "src" ] && return 0 # for src mode, xgcc tarballs are
# not included in the src archive
@@ -64,7 +64,7 @@ build_release()
(
cd "${srcdir}" || err "${_xm}: 2 !cd \"${srcdir}\""
mkrom_images
- )
+ ) || err "can't build rom images"
for _cbd in "${srcdir}/src/coreboot/"*; do
[ -d "${_cbd}/util/crossgcc/tarballs" ] || continue
_xgccdir="${vdir}/crossgcc/${_cbd##*/}"
@@ -78,7 +78,7 @@ build_release()
cd "${srcdir%/*}" || err "${_xm} 2: mktarball \"${srcdir}\""
tar -xf "${srcdir##*/}.tar.xz" || err "!extract ${srcdir##*/}.tar.xz"
rm -f "${srcdir##*/}.tar.xz" || err "!rm -f ${srcdir##*/}.tar.xz"
- )
+ ) || err "can't extract pre-crossgcc src tarball"
for _xgcc in "${vdir}/crossgcc/"*; do
[ -d "${_xgcc}" ] || continue
mkdir -p "${srcdir}/src/coreboot/${_xgcc##*/}/util/crossgcc/tarballs" || \
@@ -91,7 +91,7 @@ build_release()
(
cd "${srcdir%/*}" || err "${_xm}: mktarball \"${srcdir}\""
mktarball "${srcdir##*/}" "${srcdir##*/}.tar.xz" || err "${_xm}: mksrc"
- )
+ ) || err "can't create src tarball with crossgcc"
# now test the vendor insert script, using the release archive:
(
@@ -106,7 +106,7 @@ build_release()
err "TESTFAIL: inject: ${vrom##*/}"
continue
done
- )
+ ) || err "vendorfile inject test failure"
rm -Rf "${srcdir}" || err "!rm -Rf ${srcdir}"
}
@@ -210,7 +210,7 @@ nukerom()
(
cd "${romdir}" || err "!cd romdir ${romdir}, nukerom"
sha512sum *.rom >> vendorhashes || err "!create vendorhashes, nukerom"
- )
+ ) || err "can't create vendor hashes"
for romfile in "${romdir}"/*.rom; do
[ -f "${romfile}" ] || continue
@@ -257,7 +257,7 @@ mkrom_tarball()
(
cd "${romdir%/bin/${target}}" || err "!cd ${romdir%/bin/${target}}"
mktarball "bin/${target}" "${archivename}.tar.xz"
- )
+ ) || err "can't create rom tarball"
mv "${romdir%/bin/${target}}/${archivename}.tar.xz"* "${f%/*}" || \
err "!mktarball, rom, ${f%/*}/${romdir%/bin/${target}}/${archivename}.tar.xz"
@@ -289,7 +289,7 @@ mktarball()
[ "${2%/*}" != "${2}" ] && x_ cd "${2%/*}"
sha512sum "${2##*/}" > "${2##*/}.sha512" || \
err "!sha512sum \"${2##*/}\" > \"${2##*/}.sha512\""
- )
+ ) || err "failed to create tarball checksum"
}
main $@