Name
sqitch-bundle - Bundle a Sqitch project for distribution
Synopsis
sqitch [options] bundle
sqitch [options] bundle --dest-dir widgets-1.0.0
sqitch [options] bundle --all
sqitch [options] bundle pg mysql
Description
This command bundles up a sqitch project for distribution. At its simplest, it copies the project configuration file, plan files, and all of the change scripts to a directory. This directory can then be packaged up for distribution (as a tarball, RPM, etc.).
By default, the bundle
command will bundle the plan and scripts for the default plan and top directory, as defined by the core configuration and command-line options. Pass the --all
option to have it iterate over all known plans and top directories (as specified for engines and targets) and bundle them all. This works well for creating a a single bundle with all plans and scripts.
To specify which plans an top directories to bundle, pass the target, engine, or plan file names as arguments. See "Examples" for examples.
Engine names
Target names
Plan file names
You can also pass the core --engine
option to limit the bundle to the plan for a single engine.
The bundle command also allows you to limit bundled changes to a subset of those in a plan. When bundling a single plan, use the --from
and/or --to
options to do the limiting. When using multiple plans, specify the changes after each target argument. In either case, the changes can be specified in any way documented on sqitchchanges. See "Examples" for examples.
Options
--dest-dir
-
The name of the directory in which to bundle the project. The configuration file will be created in this directory, and all top, deploy, revert, and verify directories will be created relative to it. Defaults to bundle.
--from
-
The change from which to start bundling. If you need to bundle up only a subset of a plan, specify a change (using a supported change specification from which to start the bundling via this option. This option is probably only useful when bundling a single plan.
--to
-
The change to which to end bundling. If you need to bundle up only a subset of a plan, specify a change (using a supported change specification that should be the last change to be included in the bundle. This option is probably only useful when bundling a single plan.
-a
--all
-
Bundle all the project plans and their associated scripts. Cannot be mixed with target, engine, or plan file name arguments; doing so will result in an error. Useful for multi-plan projects that should have all the plans bundled together. Overrides the value of the
bundle.all
configuration; use--no-all
to override a truebundle.all
configuration.
Configuration Variables
Examples
Bundle a Sqitch project with the default plan and scripts into bundle:
sqitch bundle
Bundle a Sqitch project with all plans and scripts into bundle:
sqitch bundle --all
Bundle a Sqitch project into BUILDROOT/MyProj:
sqitch bundle --dest-dir BUILDROOT/MyProj
Bundle a project including changes adduser
through @v1.0
:
sqitch bundle --from adduser --to @v1.0
Bundle a the pg
engine plans with changes adduser
through @v1.0
, and the sqlite
engine with changes from the start of the plan up to widgets
:
sqitch bundle pg adduser @v1.0 sqlite @ROOT wigets
Bundle just the files necessary to execute the plan for the pg
engine:
sqitch bundle pg
Bundle the files necessary for two plan files:
sqitch bundle sqlite/sqitch.plan mysql/sqitch.plan
Sqitch
Part of the sqitch suite.