From: Michael Paquier Date: Mon, 3 Jul 2023 01:06:20 +0000 (+0900) Subject: Make PG_TEST_NOCLEAN work for temporary directories in TAP tests X-Git-Tag: REL_11_21~33 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=45cfa87e9c56432dc4f332350a3556b3700010c9;p=thirdparty%2Fpostgresql.git Make PG_TEST_NOCLEAN work for temporary directories in TAP tests When set, this environment variable was only effective for data directories but not for all the other temporary files created by PostgreSQL::Test::Utils. Keeping the temporary files after a successful run can be useful for debugging purposes. The documentation is updated to reflect the new behavior, with contents available in doc/ since v16 and in src/test/perl/README since v15. Author: Jacob Champion Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/CAAWbhmgHtDH1SGZ+Fw05CsXtE0mzTmjbuUxLB9mY9iPKgM6cUw@mail.gmail.com Discussion: https://postgr.es/m/YyPd9unV14SX2bLF@paquier.xyz Backpatch-through: 11 --- diff --git a/src/test/perl/TestLib.pm b/src/test/perl/TestLib.pm index b0c68869dc9..27098947bd1 100644 --- a/src/test/perl/TestLib.pm +++ b/src/test/perl/TestLib.pm @@ -184,7 +184,7 @@ sub tempdir return File::Temp::tempdir( $prefix . '_XXXX', DIR => $tmp_check, - CLEANUP => 1); + CLEANUP => not defined $ENV{'PG_TEST_NOCLEAN'}); } sub tempdir_short @@ -192,7 +192,8 @@ sub tempdir_short # Use a separate temp dir outside the build tree for the # Unix-domain socket, to avoid file name length issues. - return File::Temp::tempdir(CLEANUP => 1); + return File::Temp::tempdir( + CLEANUP => not defined $ENV{'PG_TEST_NOCLEAN'}); } =pod