GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
sqitch-init(3) User Contributed Perl Documentation sqitch-init(3)

sqitch-init - Create a new Sqitch project

  sqitch init <project>
  sqitch init <project> --uri <uri>

This command creates an new Sqitch project -- basically a sqitch.conf file, a sqitch.plan file, and deploy, revert, and verify subdirectories.

Running sqitch init in an existing project is safe. It will not overwrite things that are already there.

"--uri"
  sqitch init widgets --uri https://github.com/me/wigets
    

Optional URI to associate with the project. If present, the URI will be written to the project plan and used for added uniqueness in hashed object IDs.

"--engine"
  sqitch init widgets --engine pg
    

Specifies the default database engine to use in the project. Supported engines include:

  • "pg" - PostgreSQL <http://postgresql.org/> and Postgres-XC <http://sourceforge.net/>
  • "sqlite" - SQLite <http://sqlite.org/>
  • "oracle" - Oracle <http://www.oracle.com/us/products/database/>
  • "mysql" - MySQL <http://dev.mysql.com/> and MariaDB <https://mariadb.com/>
  • "firebird" - Firebird <http://www.firebirdsql.org/>
  • "vertica" - Vertica <https://my.vertica.com/>
"--top-dir"
  sqitch init widgets --top-dir sql
    

Specifies the top directory to use for the project. Typically contains the deployment plan file and the change script directories.

"--plan-file"
  sqitch init widgets --plan-file my.plan
    

Specifies the path to the deployment plan file. Defaults to "$top_dir/sqitch.plan".

"--extension"
  sqitch init widgets --extension ddl
    

Specifies the file name extension to use for change script file names. Defaults to "sql".

"--dir"
  sqitch init widgets --dir deploy=dep --dir revert=rev --dir verify=tst
    

Sets the path to a script directory. May be specified multiple times. Supported keys are:

  • "deploy"
  • "revert"
  • "verify"
  • "reworked"
  • "reworked_deploy"
  • "reworked_revert"
  • "reworked_verify"
"--target"
  sqitch init widgets --target db:pg:widgets
    

Specifies the name or URI <https://github.com/theory/uri-db/> of the default target database. If specified as a name, the default URI for the target will be "db:$engine:".

"--registry"
  sqitch init widgets --registry meta
    

Specifies the name of the database object where Sqitch's state and history data is stored. Typically a schema name (as in PostgreSQL and Oracle) or a database name (as in SQLite and MySQL). Defaults to "sqitch".

"--client"
  sqitch init widgets --client /usr/local/pgsql/bin/psql
    

Specifies the path to the command-line client for the database engine. Defaults to a client in the current path named appropriately for the specified engine.

The most important thing "sqitch init" does is create the project plan file, sqitch.conf. The options determine what gets written to the file:
"--engine"
Sets the "core.engine" configuration variable.
"--top-dir"
Sets the "core.top_dir" configuration variable.
"--plan-file"
Sets the "core.plan_file" configuration variable.
"--extension"
Sets the "core.extension" configuration variable.
"--dir"
Sets the following configuration variables:
  • "deploy" sets "core.deploy_dir"
  • "revert" sets "core.revert_dir"
  • "verify" sets "core.verify_dir"
  • "reworked" sets "core.reworked_dir"
  • "reworked_deplpoy" sets "core.reworked_deploy_dir"
  • "reworked_deplpoy" sets "core.reworked_revert_dir"
  • "reworked_deplpoy" sets "core.reworked_verify_dir"
"--target"
Sets the "engine.$engine.target" configuration variable if "--engine" is also passed and, if it's a target name, "target.$target.uri"
"--registry"
Sets the "engine.$engine.registry" configuration variable if "--engine" is also passed.
"--client"
Sets the "engine.$engine.client" configuration variable if "--engine" is also passed.

As a general rule, you likely won't need any of these options except for "--engine", since many commands need to know what engine to use, and specifying it on the command-line forever after would be annoying.

These variables will only be written if their corresponding options are specified. Otherwise, core options get written as comments with user or system configuration settings, or, failing any values from those locations, from their default values. If no defaults are specified, they will still be written, commented out, with a bar "=" and no value. This allows one to know what sorts of things are available to edit.

Start a new Sqitch project using the SQLite engine, setting the top directory for the project to sqlite:

  sqitch init --engine sqlite --top-dir sqlite

Start a new Sqitch project using the PostgreSQL engine, setting the top directory to postgres, script extension to "ddl", reworked directory to "reworked" and a version-specific client:

  sqitch init --engine  pg \
              --top-dir postgres \
              --client  /opt/pgsql-9.1/bin/psql \
              --extension ddl --dir reworked=reworked

sqitch-configuration
Describes how Sqitch hierarchical engine and target configuration works.
sqitch-engine
Command to manage database engine configuration.
sqitch-target
Command to manage target database configuration.
sqitch-config
Command to manage all Sqitch configuration.

Part of the sqitch suite.
2022-04-09 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.