The SSH pipeline works across Windows runtimes
The transport pairs rsync with a compatible SSH client and enters restricted installation directories after switching to the authorized user.
On Windows, project delivery crosses PHP, Git Bash, rsync and SSH. Combining cwRsync with Git Bash's SSH client could stop a transfer before it reached the server. A series of transport fixes now selects an SSH client compatible with the rsync runtime.
Keeping path handling predictable
Rsync calls disable automatic MSYS path conversion and adapt only local sources to Cygwin's path namespace. Remote addresses and exclusion rules retain the format expected by the transport.
Switch user before entering the directory
For installations with restricted directories, remote commands first switch to the authorized account and then enter the Gestor folder. The infrastructure account no longer needs direct access through the installation's directory tree.
The transport and full pipeline were exercised in a test environment. CSS rebuilding also ran as the installation's user, without the permission error seen before the fix.
Source: Core · req-164 to req-168 · BATCH-169 to BATCH-173