Re: [PATCH] ci: fix aggregation of test results with Meson

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

 



Hi Patrick,

On Mon, 5 May 2025, Patrick Steinhardt wrote:

> Our CI needs to be aware of the location of the test output directory so
> that it knows where to find test results. Some of our CI jobs achieve
> this by setting the `TEST_OUTPUT_DIRECTORY` environment variable, which
> ensures that the output will be written to that directory. Other jobs,
> especially on GitHub Workflows, don't set that environment variable and
> instead expect test results to be located in the source directory in
> "t/".
> 
> The latter logic does not work with Meson though, as the test results
> are not written into the source directory by default, but instead into
> the build directory. As such, any job that uses Meson without setting
> the environment variable will be unable to locate and aggregate results.
> 
> Fix this by explicitly setting the test output directory when we set up
> the Meson build directory. Like this, we can easily default to "t/" in
> the source directory when the value hasn't been set explicitly.
> 
> Reported-by: Johannes Schindelin <johannes.schindelin@xxxxxx>
> Signed-off-by: Patrick Steinhardt <ps@xxxxxx>
> ---
> Hi,
> 
> Johannes reported to me off-list that aggregation of test results
> doesn't work on GitHub Workflow when using Meson, as can be seen e.g. in
> [1].
> 
> As it turns out, the issue is that we don't set `TEST_OUTPUT_DIRECTORY`
> for many of the GitHub Workflows jobs. And because Meson by default puts
> test results into the build instead of into the source directory our
> assumption that the results can be found in "t/" is broken. This isn't 
> 
> I never noticed this failure myself because in GitLab we always set the
> above environment variable there. In any case, this patch fixes it as
> can be seen at [2].
> 
> Thanks!

Thank _you_!
Johannes

> 
> Patrick
> 
> [1]: https://github.com/git-for-windows/git/actions/runs/14806194960/job/41574766327#step:9:2125
> [2]: https://github.com/git/git/actions/runs/14833082023/job/41638408968
> ---
>  ci/run-build-and-tests.sh | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/ci/run-build-and-tests.sh b/ci/run-build-and-tests.sh
> index f99b7db2ee8..bd300a05db8 100755
> --- a/ci/run-build-and-tests.sh
> +++ b/ci/run-build-and-tests.sh
> @@ -56,6 +56,7 @@ case "$jobname" in
>  		--warnlevel 2 --werror \
>  		--wrap-mode nofallback \
>  		-Dfuzzers=true \
> +		-Dtest_output_directory="${TEST_OUTPUT_DIRECTORY:-$(pwd)/t}" \
>  		$MESONFLAGS
>  	group "Build" meson compile -C build --
>  	if test -n "$run_tests"
> 
> ---
> base-commit: 6c0bd1fc70efaf053abe4e57c976afdc72d15377
> change-id: 20250505-b4-pks-meson-aggregate-results-60ef175dd424
> 
> 





[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux