Here’s a list of website publishers that ship by default with PieCrust.
Publishers are declared and configured in the website configuration like so:
publish: <target_name>: type: <publisher_type> <config1>: <value1> <config2>: <value2>
Note that apart for the
type setting, all publishers also share a few common
true): Unless set to
false, PieCrust will first bake your website into a temporary folder (
_cache/pub/<target_name>). The publisher will then by default pick it up from there.
In addition to specifying publish targets via configuration settings, you can also (if you don’t need anything fancy) specify some of them via a simple URL-like line:
publish: <target_name>: <something://foo/bar>
The URL-like format is specified below on a per-publisher basis.
This simple publisher runs the specified command from inside your website root directory.
command: The command to run.
This publisher will run
rsync to copy or upload your website’s bake output to
a given destination.
destination: The destination given to the
_cache/pub/<target_name>): The source given to the
rsyncexecutable. It defaults to the automatic pre-publish bake output folder.
-avc --delete): The options to pass to the
rsyncexecutable. By default, those will run
rsyncin “mirroring” mode.
rsync provider support the simple URL syntax:
publish: foobar: rsync://username:password@hostname/some/path
This publisher will connect to an FTP server over SSH, and upload the output of the bake to a given directory.
PieCrust is using Paramiko for all the SFTP connection plumbing.
host: The host to connect to (including a custom port, if any).
path: The path to upload to (optional – if not specified, the target path is the remote user’s home directory).
username: Username to connect with (optional – if specified, a password will be prompted before uploading, if not, an SSH agent will be used to find a key).
sftp provider supports the simple URL syntax:
publish: foobar: sftp://username@hostname/some/path