| command | Command to run (pull or ship) | no | pull |
| gh_token | GitHub token for private repo access | yes | — |
| ssh_private_key | SSH private key for remote server access (both modes) | yes | — |
| ssh_server | SSH server hostname or IP (leave empty to read from [ship].host in TOML config) | no | — |
| ssh_user | SSH username on remote server (leave empty to read from [ship].ssh_user in TOML config, defaults to 'frappe') | no | — |
| ssh_port | SSH port for remote server | no | 22 |
| config_path | Path to base TOML config from repo root | no | — |
| config_content | Full TOML config as inline string (alternative to config_path) | no | — |
| config_overrides | TOML fragment merged on top of config_path/config_content.
Use for environment-specific values: site_name, secrets, site_config keys.
Values here take precedence over the base config.
Example:
site_name = "mysite.example.com"
[fc]
api_key = "your-fc-api-key"
| no | — |
| sitename | Site name (pull mode only) | no | — |
| existing_release | Re-use existing local release instead of building new one. Format: release_YYYYMMDD_HHMMSS | no | — |
| skip_rsync | Skip rsync step (useful when release already on remote server) | no | false |
| drain_workers | Drain workers before restart (overrides TOML config if specified) | no | — |
| migrate | Run bench migrate after switch (overrides TOML config if specified) | no | — |
| migrate_timeout | Timeout in seconds for bench migrate (overrides TOML config if specified) | no | — |
| maintenance_mode | Enable maintenance mode during deploy (overrides TOML config if specified) | no | — |
| maintenance_mode_phases | Maintenance mode phases: space-separated list (e.g., 'drain migrate' or 'migrate'). Overrides TOML config if specified. | no | — |
| backups | Take DB backup before switch (overrides TOML config if specified) | no | — |
| rollback | Roll back to previous release on failure (overrides TOML config if specified) | no | — |