diff mbox series

meson.build: Set RUST_BACKTRACE for all tests

Message ID 20250310102950.3752908-1-peter.maydell@linaro.org
State New
Headers show
Series meson.build: Set RUST_BACKTRACE for all tests | expand

Commit Message

Peter Maydell March 10, 2025, 10:29 a.m. UTC
We want to capture potential Rust backtraces on panics in our test
logs, which isn't Rust's default behaviour.  Set RUST_BACKTRACE=1 in
the add_test_setup environments, so that all our tests get run with
this environment variable set.

This makes the setting of that variable in the gitlab CI template
redundant, so we can remove it.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
 meson.build                         | 9 ++++++---
 .gitlab-ci.d/buildtest-template.yml | 1 -
 2 files changed, 6 insertions(+), 4 deletions(-)

Comments

Daniel P. Berrangé March 10, 2025, 10:32 a.m. UTC | #1
On Mon, Mar 10, 2025 at 10:29:50AM +0000, Peter Maydell wrote:
> We want to capture potential Rust backtraces on panics in our test
> logs, which isn't Rust's default behaviour.  Set RUST_BACKTRACE=1 in
> the add_test_setup environments, so that all our tests get run with
> this environment variable set.
> 
> This makes the setting of that variable in the gitlab CI template
> redundant, so we can remove it.
> 
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
>  meson.build                         | 9 ++++++---
>  .gitlab-ci.d/buildtest-template.yml | 1 -
>  2 files changed, 6 insertions(+), 4 deletions(-)
> 
> diff --git a/meson.build b/meson.build
> index 8b9fda4d95e..2f373dc675f 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -5,9 +5,12 @@ project('qemu', ['c'], meson_version: '>=1.5.0',
>  
>  meson.add_devenv({ 'MESON_BUILD_ROOT' : meson.project_build_root() })
>  
> -add_test_setup('quick', exclude_suites: ['slow', 'thorough'], is_default: true)
> -add_test_setup('slow', exclude_suites: ['thorough'], env: ['G_TEST_SLOW=1', 'SPEED=slow'])
> -add_test_setup('thorough', env: ['G_TEST_SLOW=1', 'SPEED=thorough'])
> +add_test_setup('quick', exclude_suites: ['slow', 'thorough'], is_default: true,
> +              env: ['RUST_BACKTRACE=1'])

Indent off-by-1

> +add_test_setup('slow', exclude_suites: ['thorough'],
> +               env: ['G_TEST_SLOW=1', 'SPEED=slow', 'RUST_BACKTRACE=1'])
> +add_test_setup('thorough',
> +               env: ['G_TEST_SLOW=1', 'SPEED=thorough', 'RUST_BACKTRACE=1'])
>  
>  meson.add_postconf_script(find_program('scripts/symlink-install-tree.py'))

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>


With regards,
Daniel
Philippe Mathieu-Daudé March 10, 2025, 1:15 p.m. UTC | #2
On 10/3/25 11:29, Peter Maydell wrote:
> We want to capture potential Rust backtraces on panics in our test
> logs, which isn't Rust's default behaviour.  Set RUST_BACKTRACE=1 in
> the add_test_setup environments, so that all our tests get run with
> this environment variable set.
> 
> This makes the setting of that variable in the gitlab CI template
> redundant, so we can remove it.
> 
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
>   meson.build                         | 9 ++++++---
>   .gitlab-ci.d/buildtest-template.yml | 1 -
>   2 files changed, 6 insertions(+), 4 deletions(-)
> 
> diff --git a/meson.build b/meson.build
> index 8b9fda4d95e..2f373dc675f 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -5,9 +5,12 @@ project('qemu', ['c'], meson_version: '>=1.5.0',
>   
>   meson.add_devenv({ 'MESON_BUILD_ROOT' : meson.project_build_root() })
>   
> -add_test_setup('quick', exclude_suites: ['slow', 'thorough'], is_default: true)
> -add_test_setup('slow', exclude_suites: ['thorough'], env: ['G_TEST_SLOW=1', 'SPEED=slow'])
> -add_test_setup('thorough', env: ['G_TEST_SLOW=1', 'SPEED=thorough'])
> +add_test_setup('quick', exclude_suites: ['slow', 'thorough'], is_default: true,
> +              env: ['RUST_BACKTRACE=1'])
> +add_test_setup('slow', exclude_suites: ['thorough'],
> +               env: ['G_TEST_SLOW=1', 'SPEED=slow', 'RUST_BACKTRACE=1'])
> +add_test_setup('thorough',
> +               env: ['G_TEST_SLOW=1', 'SPEED=thorough', 'RUST_BACKTRACE=1'])

Nitpicking, we can keep sorted:

          env: ['G_TEST_SLOW=1', 'RUST_BACKTRACE=1', 'SPEED=thorough'])

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Peter Maydell March 10, 2025, 1:18 p.m. UTC | #3
On Mon, 10 Mar 2025 at 13:15, Philippe Mathieu-Daudé <philmd@linaro.org> wrote:
>
> On 10/3/25 11:29, Peter Maydell wrote:
> > We want to capture potential Rust backtraces on panics in our test
> > logs, which isn't Rust's default behaviour.  Set RUST_BACKTRACE=1 in
> > the add_test_setup environments, so that all our tests get run with
> > this environment variable set.
> >
> > This makes the setting of that variable in the gitlab CI template
> > redundant, so we can remove it.
> >
> > Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> > ---
> >   meson.build                         | 9 ++++++---
> >   .gitlab-ci.d/buildtest-template.yml | 1 -
> >   2 files changed, 6 insertions(+), 4 deletions(-)
> >
> > diff --git a/meson.build b/meson.build
> > index 8b9fda4d95e..2f373dc675f 100644
> > --- a/meson.build
> > +++ b/meson.build
> > @@ -5,9 +5,12 @@ project('qemu', ['c'], meson_version: '>=1.5.0',
> >
> >   meson.add_devenv({ 'MESON_BUILD_ROOT' : meson.project_build_root() })
> >
> > -add_test_setup('quick', exclude_suites: ['slow', 'thorough'], is_default: true)
> > -add_test_setup('slow', exclude_suites: ['thorough'], env: ['G_TEST_SLOW=1', 'SPEED=slow'])
> > -add_test_setup('thorough', env: ['G_TEST_SLOW=1', 'SPEED=thorough'])
> > +add_test_setup('quick', exclude_suites: ['slow', 'thorough'], is_default: true,
> > +              env: ['RUST_BACKTRACE=1'])
> > +add_test_setup('slow', exclude_suites: ['thorough'],
> > +               env: ['G_TEST_SLOW=1', 'SPEED=slow', 'RUST_BACKTRACE=1'])
> > +add_test_setup('thorough',
> > +               env: ['G_TEST_SLOW=1', 'SPEED=thorough', 'RUST_BACKTRACE=1'])
>
> Nitpicking, we can keep sorted:
>
>           env: ['G_TEST_SLOW=1', 'RUST_BACKTRACE=1', 'SPEED=thorough'])

That splits up the two envariables that are controlling the
"run the slow tests" behaviour, though...

-- PMM
diff mbox series

Patch

diff --git a/meson.build b/meson.build
index 8b9fda4d95e..2f373dc675f 100644
--- a/meson.build
+++ b/meson.build
@@ -5,9 +5,12 @@  project('qemu', ['c'], meson_version: '>=1.5.0',
 
 meson.add_devenv({ 'MESON_BUILD_ROOT' : meson.project_build_root() })
 
-add_test_setup('quick', exclude_suites: ['slow', 'thorough'], is_default: true)
-add_test_setup('slow', exclude_suites: ['thorough'], env: ['G_TEST_SLOW=1', 'SPEED=slow'])
-add_test_setup('thorough', env: ['G_TEST_SLOW=1', 'SPEED=thorough'])
+add_test_setup('quick', exclude_suites: ['slow', 'thorough'], is_default: true,
+              env: ['RUST_BACKTRACE=1'])
+add_test_setup('slow', exclude_suites: ['thorough'],
+               env: ['G_TEST_SLOW=1', 'SPEED=slow', 'RUST_BACKTRACE=1'])
+add_test_setup('thorough',
+               env: ['G_TEST_SLOW=1', 'SPEED=thorough', 'RUST_BACKTRACE=1'])
 
 meson.add_postconf_script(find_program('scripts/symlink-install-tree.py'))
 
diff --git a/.gitlab-ci.d/buildtest-template.yml b/.gitlab-ci.d/buildtest-template.yml
index 4cc19239319..39da7698b09 100644
--- a/.gitlab-ci.d/buildtest-template.yml
+++ b/.gitlab-ci.d/buildtest-template.yml
@@ -63,7 +63,6 @@ 
   stage: test
   image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:$QEMU_CI_CONTAINER_TAG
   script:
-    - export RUST_BACKTRACE=1
     - source scripts/ci/gitlab-ci-section
     - section_start buildenv "Setting up to run tests"
     - scripts/git-submodule.sh update roms/SLOF