[LTP] [PATCH 1/1] generate_lvm_runfile.sh: Fix bashism

Petr Vorel pvorel@suse.cz
Thu Aug 4 22:24:30 CEST 2022


Hi Martin,

> Hi,
> `trap ... EXIT` cannot be used to emulate `trap ... ERR`. The latter
> behaves as if every command/pipeline in the script (except conditions)
> were wrapped in ROD. So `trap ... ERR` will trigger exit on any failure,
Ah, thx for info. OK, we also need to add set -e (or #!/bin/sh -e).
Because using ERR would require to change shebang to #!/bin/bash.

Kind regards,
Petr

> while `trap ... EXIT` will let the script continue after all errors and
> then check exit code of only the very last command. That's not what we
> want here.

> On 03. 08. 22 19:57, Petr Vorel wrote:
> > ERR is not on dash (tested on 0.5.11).

> > Signed-off-by: Petr Vorel <pvorel@suse.cz>
> > ---
> >  testcases/misc/lvm/generate_lvm_runfile.sh | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)

> > diff --git a/testcases/misc/lvm/generate_lvm_runfile.sh b/testcases/misc/lvm/generate_lvm_runfile.sh
> > index 72b286a69..5bf5d91d6 100755
> > --- a/testcases/misc/lvm/generate_lvm_runfile.sh
> > +++ b/testcases/misc/lvm/generate_lvm_runfile.sh
> > @@ -13,7 +13,7 @@ LVM_TMPDIR="$LVM_DIR/ltp/growfiles"

> >  generate_runfile()
> >  {
> > -	trap 'tst_brk TBROK "Cannot create LVM runfile"' ERR
> > +	trap '[ $? -eq 0 ] && exit 0 || tst_brk TBROK "Cannot create LVM runfile"' EXIT
> >  	INFILE="$LTPROOT/testcases/data/lvm/runfile.tpl"
> >  	OUTFILE="$LTPROOT/runtest/lvm.local"
> >  	FS_LIST=`tst_supported_fs`


More information about the ltp mailing list