.\" Automatically generated by Pod::Man 4.07 (Pod::Simple 3.32) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .if !\nF .nr F 0 .if \nF>0 \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "sqitch-verify 3pm" .TH sqitch-verify 3pm "2016-12-17" "perl v5.24.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "Name" .IX Header "Name" sqitch-verify \- Verify deployed database changes .SH "Synopsis" .IX Header "Synopsis" .Vb 4 \& sqitch [options] verify [] \& sqitch [options] verify \-\-from\-change \& sqitch [options] verify \-\-to\-change \& sqitch [options] verify \-\-from\-change \-\-to\-change .Ve .SH "Description" .IX Header "Description" Verify that a database is valid relative to the plan and the verification scripts for each deployed change. .PP More specifically, \f(CW\*(C`verify\*(C'\fR iterates over all deployed and planned changes (or the subset identified by \f(CW\*(C`\-\-from\-change\*(C'\fR and/or \f(CW\*(C`\-\-to\-change\*(C'\fR) and checks that each: .IP "\(bu" 4 Is deployed. .IP "\(bu" 4 Is present in the plan. .IP "\(bu" 4 Was deployed in the proper order. .IP "\(bu" 4 Passes its verify test, if one exists and the change has not been reworked. .PP The \f(CW\*(C`\*(C'\fR parameter specifies the database to which to connect, and may also be specified as the \f(CW\*(C`\-\-target\*(C'\fR option. It can be target name, a \s-1URI,\s0 an engine name, or plan file path. .PP Verify tests are scripts that may be associated with each change. If a change has no verify script, a warning is emitted, but it is not considered a failure. If a change has been reworked, only the most recent reworking will have its verify script executed. .PP Verify scripts should make no assumptions about the contents of the database, as unit tests might. Rather, their job is to ensure that the state of a database is correct after a deploy script has completed. Verify scripts are run through the database engine command-line client, just like deploy and revert scripts. They should cause the client to exit with a non-zero exit code if they fail. .SH "Options" .IX Header "Options" .ie n .IP """\-t""" 4 .el .IP "\f(CW\-t\fR" 4 .IX Item "-t" .PD 0 .ie n .IP """\-\-target""" 4 .el .IP "\f(CW\-\-target\fR" 4 .IX Item "--target" .PD The target database to which to connect. This option can be either a \s-1URI\s0 or the name of a target in the configuration. .ie n .IP """\-\-from\-change""" 4 .el .IP "\f(CW\-\-from\-change\fR" 4 .IX Item "--from-change" .PD 0 .ie n .IP """\-\-from""" 4 .el .IP "\f(CW\-\-from\fR" 4 .IX Item "--from" .PD Specify the change with which to start the verification. Defaults to the earliest deployed change. See sqitchchanges for the various ways in which changes can be specified. .ie n .IP """\-\-to\-change""" 4 .el .IP "\f(CW\-\-to\-change\fR" 4 .IX Item "--to-change" .PD 0 .ie n .IP """\-\-to""" 4 .el .IP "\f(CW\-\-to\fR" 4 .IX Item "--to" .PD Specify the change with which to complete the verification. Defaults to the last deployed change. See sqitchchanges for the various ways in which changes can be specified. .ie n .IP """\-s""" 4 .el .IP "\f(CW\-s\fR" 4 .IX Item "-s" .PD 0 .ie n .IP """\-\-set""" 4 .el .IP "\f(CW\-\-set\fR" 4 .IX Item "--set" .PD Set a variable name and value for use by the database engine client, if it supports variables. The format must be \f(CW\*(C`name=value\*(C'\fR, e.g., \&\f(CW\*(C`\-\-set defuser=\*(AqHomer Simpson\*(Aq\*(C'\fR. Overrides any values loaded from the \&\f(CW\*(C`verify.variables\*(C'\fR configuration. .SH "Configuration Variables" .IX Header "Configuration Variables" .ie n .IP """[verify.variables]""" 4 .el .IP "\f(CW[verify.variables]\fR" 4 .IX Item "[verify.variables]" A section defining database client variables. Useful if your database engine supports variables in scripts, such as PostgreSQL's \&\f(CW\*(C`psql\*(C'\fR variables , Vertica's \&\f(CW\*(C`vsql\*(C'\fR variables , MySQL's user variables , and SQL*Plus's \&\f(CW\*(C`DEFINE\*(C'\fR variables . .SH "Sqitch" .IX Header "Sqitch" Part of the sqitch suite.