diff options
author | Michael Paquier <michael@paquier.xyz> | 2023-07-03 10:06:18 +0900 |
---|---|---|
committer | Michael Paquier <michael@paquier.xyz> | 2023-07-03 10:06:18 +0900 |
commit | b102e80ab82203e5e65e902c28cdab491d1468b0 (patch) | |
tree | 1e4f0591985efb601191e2a5be99e02572102dee /src | |
parent | 984c23f6f5926f7cfb304b8f931e9bb66174b41c (diff) | |
download | postgresql-b102e80ab82203e5e65e902c28cdab491d1468b0.tar.gz postgresql-b102e80ab82203e5e65e902c28cdab491d1468b0.zip |
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
Diffstat (limited to 'src')
-rw-r--r-- | src/test/perl/TestLib.pm | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/test/perl/TestLib.pm b/src/test/perl/TestLib.pm index 6e4398afc90..7715d551b31 100644 --- a/src/test/perl/TestLib.pm +++ b/src/test/perl/TestLib.pm @@ -252,7 +252,7 @@ sub all_tests_passing Securely create a temporary directory inside C<$tmp_check>, like C<mkdtemp>, and return its name. The directory will be removed automatically at the -end of the tests. +end of the tests, unless the environment variable PG_TEST_NOCLEAN is provided. If C<prefix> is given, the new directory is templated as C<${prefix}_XXXX>. Otherwise the template is C<tmp_test_XXXX>. @@ -266,7 +266,7 @@ sub tempdir return File::Temp::tempdir( $prefix . '_XXXX', DIR => $tmp_check, - CLEANUP => 1); + CLEANUP => not defined $ENV{'PG_TEST_NOCLEAN'}); } =pod @@ -281,7 +281,8 @@ name, to avoid path length issues. sub tempdir_short { - return File::Temp::tempdir(CLEANUP => 1); + return File::Temp::tempdir( + CLEANUP => not defined $ENV{'PG_TEST_NOCLEAN'}); } =pod |