sqitch-deploy - Deploy changes to a database


  sqitch [options] deploy
  sqitch [options] deploy <target>
  sqitch [options] deploy --to-target <target>


Deploy changes to the database. Changes will begin from the current deployment state. They will run to the latest change, unless a target is specified, either via --to or with no option flag, in which case changes will be deployed up-to and including that target.

If the database it up-to-date or already deployed to the specified target, no changes will be made. If the target appears earlier in the plan than the currently-deployed state, an error will be returned, along with a suggestion to instead use sqitch-revert.



Specify the deployment target. Defaults to the last point in the plan. See sqitchchanges for the various ways in which change targets can be specified.


Specify the reversion mode to use in case of failure. Possible values are:


In the event of failure, revert all deployed changes, back to the point at which deployment started. This is the default.


In the event of failure, revert all deployed changes to the last successfully-applied tag. If no tags were applied during this deployment, all changes will be reverted to the pint at which deployment began.


In the event of failure, no changes will be reverted. This is on the assumption that a change failure is total, and the change may be applied again.


Set a variable name and value for use by the database engine client, if it supports variables. The format must be name=value, e.g., --set defuser='Homer Simpson'. Overrides any values loaded from the deploy.variables configuration.

Configuration Variables


Target to deploy to. You probably don't want to set this.


Deploy mode. The supported values are the same as for the --mode option.


A section defining database client variables. Useful if your database engine supports variables in scripts, such as PostgreSQL's psql variables.


Part of the sqitch suite.