aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoelacanthus <[email protected]>2021-10-25 18:22:20 +0800
committerGitHub <[email protected]>2021-10-25 18:22:20 +0800
commitc7ac4208afc9f4c0c7e100d627fef7d47d0b885b (patch)
tree25b179225c1aa6eeea2a9067c20ceff392ec4867
parent9c42d75e17ea62786581376ff627036fd63311ef (diff)
refactor(script): add fast-fail and clean-up (#5)
Signed-off-by: Coelacanthus <[email protected]>
-rwxr-xr-xci-upload.sh13
-rwxr-xr-xdeploy.sh4
-rwxr-xr-xpkgbuild.sh35
-rwxr-xr-xrepodb.sh22
4 files changed, 52 insertions, 22 deletions
diff --git a/ci-upload.sh b/ci-upload.sh
index 9d2cff9..74c148a 100755
--- a/ci-upload.sh
+++ b/ci-upload.sh
@@ -1,5 +1,16 @@
#!/bin/bash
+# end up when failed
+set -Eeuo pipefail
+
+# clean up when exit
+trap cleanup SIGINT SIGTERM ERR EXIT
+cleanup() {
+ trap - SIGINT SIGTERM ERR EXIT
+ unset ARCH
+ unset PKGDEST
+}
+
ARCH=$(uname -m)
PKGDEST="${PWD}/packages/$ARCH"
@@ -15,5 +26,3 @@ popd
curl -d "token=$UPLOAD_TOKEN&action=UPLOADED" -fsSL "$REMOTE_PATH"
-unset ARCH
-unset PKGDEST
diff --git a/deploy.sh b/deploy.sh
index b6d5224..691ad2e 100755
--- a/deploy.sh
+++ b/deploy.sh
@@ -1,4 +1,8 @@
#!/bin/bash
+
+# end up when failed
+set -Eeuo pipefail
+
if [ $# -eq 0 ]; then
echo 'Should provide least one argument'
exit 1
diff --git a/pkgbuild.sh b/pkgbuild.sh
index ae14b4e..1b44d8b 100755
--- a/pkgbuild.sh
+++ b/pkgbuild.sh
@@ -1,5 +1,27 @@
#!/bin/bash
+# end up when failed
+set -Eeuo pipefail
+
+# clean up when exit
+trap cleanup SIGINT SIGTERM ERR EXIT
+cleanup() {
+ trap - SIGINT SIGTERM ERR EXIT
+ unset PACKAGE_NAME
+ unset PKGDEST
+ unset SRCDEST
+ unset CONFDEST
+ unset REPO_DEST
+ rm -f "$TMPCONF"
+ rm -rf "$REPO_PENDING"
+ rm -rf "$REPO_DIFF"
+ unset TMPCONF
+ unset REPO_PENDING
+ unset REPO_DIFF
+ unset PKGBUILD_DIRECTORY_BASE
+ unset ARCH
+}
+
ARCH=$(uname -m)
PKGBUILD_DIRECTORY_BASE="repo"
PKGDEST="${PWD}/packages/$ARCH"
@@ -8,7 +30,6 @@ CONFDEST="${PWD}/makepkg.d/makepkg.$ARCH.conf"
REPO_PENDING="${PWD}/packages/$ARCH/PENDING"
REPO_DIFF="${PWD}/packages/$ARCH/DIFF"
-trap 'rm -f "$TMPCONF"' EXIT
TMPCONF=$(mktemp -t makepkg.$ARCH.conf.XXXXXXXXXX) || exit 1
cat "${PWD}/makepkg.d/makepkg.base.conf" > "$TMPCONF"
cat "$CONFDEST" >> "$TMPCONF"
@@ -61,15 +82,3 @@ fi
date +%s > "$PKGDEST/LASTBUILD"
-unset PACKAGE_NAME
-unset PKGDEST
-unset SRCDEST
-unset CONFDEST
-unset REPO_DEST
-rm -rf "$REPO_PENDING"
-rm -rf "$REPO_DIFF"
-unset REPO_PENDING
-unset REPO_DIFF
-unset PKGBUILD_DIRECTORY_BASE
-unset ARCH
-unset REPO_BASE_NAME
diff --git a/repodb.sh b/repodb.sh
index 7ac8533..659cbe4 100755
--- a/repodb.sh
+++ b/repodb.sh
@@ -1,5 +1,20 @@
#!/bin/bash
+# end up when failed
+set -Eeuo pipefail
+
+# clean up when exit
+trap cleanup SIGINT SIGTERM ERR EXIT
+cleanup() {
+ trap - SIGINT SIGTERM ERR EXIT
+ unset ARCH
+ unset PKGDEST
+ unset REPO_DEST
+ unset GPG_KEY
+ unset PACKAGE_NAME
+ unset LATEST
+}
+
REPO_BASE_NAME="kunoisayami"
ARCH=$(uname -m)
PKGDEST="${PWD}/packages/$ARCH"
@@ -13,10 +28,3 @@ while read PACKAGE_NAME; do
fi
repo-add "$REPO_DEST" "$PACKAGENAME" -s -v -R -k $GPG_KEY
done
-
-unset ARCH
-unset PKGDEST
-unset REPO_DEST
-unset GPG_KEY
-unset PACKAGE_NAME
-unset LATEST \ No newline at end of file