qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] iotests: Allow running from different directory


From: Kevin Wolf
Subject: Re: [PATCH] iotests: Allow running from different directory
Date: Thu, 3 Sep 2020 19:21:46 +0200

Am 03.09.2020 um 14:54 hat Max Reitz geschrieben:
> On 02.09.20 13:03, Kevin Wolf wrote:
> > It is convenient to be able to edit the tests and run them without
> > changing the current working directory back and forth. Instead of
> > assuming that $PWD is the qemu-iotests build directory, derive the build
> > directory from the executed script.
> > 
> > This allows 'check' to find the required files even when called from
> > another directory. The scratch directory will still be in the current
> > working directory.
> > 
> > Signed-off-by: Kevin Wolf <kwolf@redhat.com>
> > ---
> >  tests/qemu-iotests/check | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check
> > index 3ab859ac1a..22ada6a549 100755
> > --- a/tests/qemu-iotests/check
> > +++ b/tests/qemu-iotests/check
> > @@ -44,7 +44,7 @@ then
> >          _init_error "failed to obtain source tree name from check symlink"
> >      fi
> >      source_iotests=$(cd "$source_iotests"; pwd) || _init_error "failed to 
> > enter source tree"
> > -    build_iotests=$PWD
> > +    build_iotests=$(dirname "$0")
> 
> This breaks running check from the build tree.
> (i.e. cd $build/tests/qemu-iotests; ./check)
> 
> The problem is that to run the test, we do cd to the source directory
> ($source_iotests), and so $build_iotests then becomes invalid if it’s
> just a relative path.  In my case, this leads to the following error:
> 
> -Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1048576
> +./common.rc: line 139: $QEMU/tests/qemu-iotests/../../qemu-img: No such
> file or directory

Ah, my symlinks in the source tree made it work for me.

> I think this could be resolved by wrapping the $(dirname) in
> $(realpath), i.e.
> 
> build_iotests=$(realpath "$(dirname "$0")")

Sounds good, I'll update it in my tree.

Kevin

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]