pgsql: Change TAP test framework to not rely on having a chmod executab
Change TAP test framework to not rely on having a chmod executable.
This might not work at all on Windows, and is not ever efficient.
Michael Paquier
Branch
------
master
Details
-------
http://git.postgresql.org/pg/commitdiff/ca3f43aa48a83013ea50aeee7cd193a5859c4587
Modified Files
--------------
src/test/ssl/ServerSetup.pm | 16 +++++++++++++++-
src/test/ssl/t/001_ssltests.pl | 2 +-
2 files changed, 16 insertions(+), 2 deletions(-)
--
Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers
On 6/19/15 10:52 AM, Robert Haas wrote:
Change TAP test framework to not rely on having a chmod executable.
This might not work at all on Windows, and is not ever efficient.
Michael Paquier
I came across this on an unrelated mission and noticed it was
unnecessarily complicated. How about this patch instead?
Attachments:
0001-Simplify-Perl-chmod-calls.patchtext/x-diff; name=0001-Simplify-Perl-chmod-calls.patchDownload
>From 3062d1ad69774f7dd68eb8f307997ae32d3535f2 Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter_e@gmx.net>
Date: Tue, 25 Aug 2015 09:58:49 -0400
Subject: [PATCH] Simplify Perl chmod calls
The Perl chmod function already takes multiple file arguments, so we
don't need a separate looping function.
---
src/test/ssl/ServerSetup.pm | 16 +---------------
1 file changed, 1 insertion(+), 15 deletions(-)
diff --git a/src/test/ssl/ServerSetup.pm b/src/test/ssl/ServerSetup.pm
index 8c1b517..a8228b0 100644
--- a/src/test/ssl/ServerSetup.pm
+++ b/src/test/ssl/ServerSetup.pm
@@ -43,20 +43,6 @@ sub copy_files
}
}
-# Perform chmod on a set of files, taking into account wildcards
-sub chmod_files
-{
- my $mode = shift;
- my $file_expr = shift;
-
- my @all_files = glob $file_expr;
- foreach my $file_entry (@all_files)
- {
- chmod $mode, $file_entry
- or die "Could not run chmod with mode $mode on $file_entry";
- }
-}
-
sub configure_test_server_for_ssl
{
my $tempdir = $_[0];
@@ -82,7 +68,7 @@ sub configure_test_server_for_ssl
# Copy all server certificates and keys, and client root cert, to the data dir
copy_files("ssl/server-*.crt", "$tempdir/pgdata");
copy_files("ssl/server-*.key", "$tempdir/pgdata");
- chmod_files(0600, "$tempdir/pgdata/server-*.key");
+ chmod(0600, glob "$tempdir/pgdata/server-*.key") or die $!;
copy_files("ssl/root+client_ca.crt", "$tempdir/pgdata");
copy_files("ssl/root+client.crl", "$tempdir/pgdata");
--
2.5.0
On Tue, Aug 25, 2015 at 11:02 PM, Peter Eisentraut <peter_e@gmx.net> wrote:
On 6/19/15 10:52 AM, Robert Haas wrote:
Change TAP test framework to not rely on having a chmod executable.
This might not work at all on Windows, and is not ever efficient.
Michael Paquier
I came across this on an unrelated mission and noticed it was
unnecessarily complicated. How about this patch instead?
I didn't know this one... Looking at the docs this would visibly work
at least down to 5.8.8, the docs saying that a list of files can be
passed to chmod:
http://perldoc.perl.org/5.8.8/functions/chmod.html
--
Michael
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers