Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip some permissions checks on Cygwin
authorAndrew Dunstan <andrew@dunslane.net>
Thu, 13 Jun 2024 11:38:48 +0000 (07:38 -0400)
committerAndrew Dunstan <andrew@dunslane.net>
Thu, 13 Jun 2024 12:07:20 +0000 (08:07 -0400)
These are checks that are already skipped on other Windows systems.

Backpatch to all live branches, as appropriate.

src/bin/initdb/t/001_initdb.pl
src/bin/pg_basebackup/t/010_pg_basebackup.pl
src/bin/pg_ctl/t/001_start_stop.pl
src/bin/pg_rewind/t/002_databases.pl
src/bin/pg_verifybackup/t/003_corruption.pl

index 8387b945d369b3261fa5a324feb34473fa1d323e..9fbecd6bcd4bd607c1c79b728b27d8049a78759c 100644 (file)
@@ -77,7 +77,7 @@ command_fails([ 'initdb', $datadir ], 'existing data directory');
 SKIP:
 {
    skip "unix-style permissions not supported on Windows", 2
-     if ($windows_os);
+     if ($windows_os || $Config::Config{osname} eq 'cygwin');
 
    # Init a new db with group access
    my $datadir_group = "$tempdir/data_group";
index 09c540060a4db40956a2694a01de4d969918805b..93991b60078bca188a57a3de26ff87e224cbba81 100644 (file)
@@ -221,7 +221,8 @@ SKIP:
 # skip on Windows.
 SKIP:
 {
-   skip "symlinks not supported on Windows", 18 if ($windows_os);
+   skip "symlinks not supported on Windows", 18
+     if ($windows_os);
 
    # Move pg_replslot out of $pgdata and create a symlink to it.
    $node->stop;
@@ -307,9 +308,15 @@ SKIP:
        "tablespace symlink was updated");
    closedir $dh;
 
-   # Group access should be enabled on all backup files
-   ok(check_mode_recursive("$tempdir/backup1", 0750, 0640),
-       "check backup dir permissions");
+   SKIP:
+   {
+       skip "unix-style permissions not supported on Windows", 1
+         if ($Config::Config{osname} eq 'cygwin');
+
+       # Group access should be enabled on all backup files
+       ok(check_mode_recursive("$tempdir/backup1", 0750, 0640),
+          "check backup dir permissions");
+   }
 
    # Unlogged relation forks other than init should not be copied
    my ($tblspc1UnloggedBackupPath) =
index 9ca931448166b0ade3550addfe1a818322f1c851..0b2f7df1b23d1556ec722ce478283f5ea04d0c1b 100644 (file)
@@ -78,7 +78,8 @@ $logFileName = "$tempdir/data/perm-test-640.log";
 
 SKIP:
 {
-   skip "group access not supported on Windows", 3 if ($windows_os);
+   skip "group access not supported on Windows", 3
+     if ($windows_os || $Config::Config{osname} eq 'cygwin');
 
    system_or_bail 'pg_ctl', 'stop', '-D', "$tempdir/data";
 
index 1db534c0dc0cc70e18583b486e272d856d6ab7cf..65281af1e4fd146e92307d28eabe05fcc93f75ab 100644 (file)
@@ -57,7 +57,7 @@ template1
   SKIP:
    {
        skip "unix-style permissions not supported on Windows", 1
-         if ($windows_os);
+         if ($windows_os || $Config::Config{osname} eq 'cygwin');
 
        ok(check_mode_recursive($node_master->data_dir(), 0750, 0640),
            'check PGDATA permissions');
index 40b2e3f5bb939c102b84e7c4b3e29cadec72c0b0..c491f7f930d815c3f399e5fc8f5868a2e0dc3023 100644 (file)
@@ -100,7 +100,8 @@ for my $scenario (@scenario)
   SKIP:
    {
        skip "unix-style permissions not supported on Windows", 4
-         if $scenario->{'skip_on_windows'} && $windows_os;
+         if ($scenario->{'skip_on_windows'} &&
+             ($windows_os || $Config::Config{osname} eq 'cygwin'));
 
        # Take a backup and check that it verifies OK.
        my $backup_path    = $master->backup_dir . '/' . $name;