diff options
author | Gwenael Lambrouin <gwenael.lambrouin@orange.com> | 2021-12-13 13:48:14 +0100 |
---|---|---|
committer | Gwenael Lambrouin <gwenael.lambrouin@orange.com> | 2022-02-28 18:40:54 +0100 |
commit | ce062d315394b813ce79849c6595d198351c2cec (patch) | |
tree | 135e3fcb9623fa5d344f07f15f4c5682796a7ff5 /nfvbenchvm/dib/build-image.sh | |
parent | 1a9c875d35daf4e742cd980e824c862ad793a658 (diff) |
nfvbenchvm: abort build on error
Make sure a VM image build fails if any step fails. Else we can end up
with a bad image not containing all that we want, and we discover this
later at run time.
For instance, without the current patch, we can get a generator VM image
without nfvbench installed because "pip install" failed, but this is not
detected by the build process because the last step in
post-install.d/52-nfvbench-script is an "echo" command that returns a
success code.
We fix this by making all the Bash scripts fail if any command whose
return code is not tested fails (set -euo pipefail).
Change-Id: Ic5ec9eb85a8d6e7e4d1dcbac8ebcac5931e4808e
Signed-off-by: Gwenael Lambrouin <gwenael.lambrouin@orange.com>
Diffstat (limited to 'nfvbenchvm/dib/build-image.sh')
-rwxr-xr-x | nfvbenchvm/dib/build-image.sh | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/nfvbenchvm/dib/build-image.sh b/nfvbenchvm/dib/build-image.sh index 4559bb6..3423140 100755 --- a/nfvbenchvm/dib/build-image.sh +++ b/nfvbenchvm/dib/build-image.sh @@ -6,6 +6,9 @@ # Ubuntu: sudo apt-get -y install python3 python3-venv qemu-utils kpartx # CentOS: sudo yum install -y python3 qemu-img kpartx +# Stop on error (see https://wizardzines.com/comics/bash-errors/) +set -euo pipefail + usage() { echo "Usage: $0 [-l] [-g] [-v]" echo " -l build NFVbench loop VM image" |