This enables finer control (via excludes) when seeding the destination
directory for rsync. Because we know we have rsync available, we can use
rsync rather than cp by using configuration like this example:
strategy: rsync
rsync:
copy: true
copy_tool_rsync: true
rsync_excludes: ["assets", "silverstripe-cache"]
The default tool remains cp, so this change is backward-compatible.
This tasks uses a remote checkout on the server to provide the release.
In our use case this remote cache resides in $to/$shared/git-remote-cache,
variable 'shared' is substituted with "shared" by default. At this time, the
remote cache is not build automatically, you need to provide a clean
checkout before you can start using it.