aboutsummaryrefslogtreecommitdiff
path: root/doc/wydawca.texi
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2009-02-26 17:39:08 +0200
committerSergey Poznyakoff <gray@gnu.org.ua>2009-02-26 17:39:08 +0200
commit514797c56e431f37de9a00834281f990a7b15c46 (patch)
tree1f35e3b06d387e424f5a0d866390dccd34efd202 /doc/wydawca.texi
parent5b1f7f7213c1033211ce08307922e04044f872f4 (diff)
downloadwydawca-514797c56e431f37de9a00834281f990a7b15c46.tar.gz
wydawca-514797c56e431f37de9a00834281f990a7b15c46.tar.bz2
Minor fixes
Diffstat (limited to 'doc/wydawca.texi')
-rw-r--r--doc/wydawca.texi1035
1 files changed, 676 insertions, 359 deletions
diff --git a/doc/wydawca.texi b/doc/wydawca.texi
index ad274b2..589f2f7 100644
--- a/doc/wydawca.texi
+++ b/doc/wydawca.texi
@@ -31,7 +31,7 @@ Published by the Free Software Foundation,
3151 Franklin Street, Fifth Floor 3151 Franklin Street, Fifth Floor
32Boston, MA 02110-1301, USA 32Boston, MA 02110-1301, USA
33 33
34Copyright @copyright{} 2007 Sergey Poznyakoff 34Copyright @copyright{} 2007, 2009 Sergey Poznyakoff
35 35
36Permission is granted to copy, distribute and/or modify this document 36Permission is granted to copy, distribute and/or modify this document
37under the terms of the GNU Free Documentation License, Version 1.2 or 37under the terms of the GNU Free Documentation License, Version 1.2 or
@@ -59,13 +59,12 @@ Software Foundation raise funds for GNU development.''
59@page 59@page
60@contents 60@contents
61 61
62@node Top, Intro, (dir), (dir) 62@ifnottex
63 63@node Top
64@ifinfo 64@top Wydawca
65@chapter Wydawca
66This edition of the @cite{Wydawca Manual}, last updated @value{UPDATED}, 65This edition of the @cite{Wydawca Manual}, last updated @value{UPDATED},
67documents Wydawca Version @value{VERSION}. 66documents Wydawca Version @value{VERSION}.
68@end ifinfo 67@end ifnottex
69 68
70@menu 69@menu
71* Intro:: What is Wydawca 70* Intro:: What is Wydawca
@@ -90,12 +89,11 @@ already listed, mentioned here so you can get to them in one step:
90 89
91How to Configure @command{wydawca}. 90How to Configure @command{wydawca}.
92 91
93* include::
94* syslog:: 92* syslog::
95* sql:: 93* sql::
96* access methods:: 94* access methods::
97* archivation:: 95* archivation::
98* directory pairs:: 96* spool::
99* statistics:: 97* statistics::
100* notification:: 98* notification::
101 99
@@ -109,7 +107,7 @@ Mail Notification
109@end detailmenu 107@end detailmenu
110@end menu 108@end menu
111 109
112@node Intro, overview, Top, Top 110@node Intro
113@chapter Introduction to Wydawca 111@chapter Introduction to Wydawca
114@cindex introduction 112@cindex introduction
115 Let's begin with a short synopsis. Suppose you run a developer's 113 Let's begin with a short synopsis. Suppose you run a developer's
@@ -150,21 +148,21 @@ signature @file{foo-1.0.tar.gz.sig}. Then he creates a special
150@dfn{directive} file, that contains information about where the 148@dfn{directive} file, that contains information about where the
151distributed tarball must be placed, and clear-signs it using his 149distributed tarball must be placed, and clear-signs it using his
152@acronym{PGP} key, thus obtaining file 150@acronym{PGP} key, thus obtaining file
153@file{foo-1.0.tar.gz.directive.asc}. Then he uploads these three files 151@file{foo-1.0.tar.gz.directive.asc}. Finally, he uploads these three files
154(a @dfn{triplet}) to the upload site, storing them into the directory 152(a @dfn{triplet}) to the upload site, storing them into the directory
155@file{/incoming/ftp}. 153@file{/incoming/ftp}.
156 154
157@cindex release submission daemon 155@cindex release submission daemon
158 From now on, it is the responsibility of a @dfn{release submission daemon} 156 From now on, it is the responsibility of a @dfn{release submission daemon}
159to scan the source directories, gather the triplets, verify them, 157to scan the source directories, gather the triplets, verify them,
160and to move any files that had passed the verification successfully to 158and to move any files that had successfully passed verification to
161their distribution sites. 159their distribution sites.
162 160
163 @command{Wydawca} is such a release submission daemon. It is able to 161 @command{Wydawca} is such a release submission daemon. It is able to
164handle any number of @samp{source/destination} pairs, offers an 162handle any number of @samp{source/destination} pairs (called
165extensible logging and mail notification mechanism, allowing both 163@dfn{spools}, offers an extensible logging and mail notification
166package maintainers and site administrators to be immediately notified 164mechanism, allowing both package maintainers and site administrators
167about any occurring problems. 165to be immediately notified about any occurring problems.
168 166
169 @command{Wydawca} supports version 1.1 of directory file, as 167 @command{Wydawca} supports version 1.1 of directory file, as
170described in 168described in
@@ -181,19 +179,20 @@ Standalone directives}.
181 The program is written entirely in @acronym{C}, is highly 179 The program is written entirely in @acronym{C}, is highly
182effective and consumes little resources. 180effective and consumes little resources.
183 181
184@node overview, starting, Intro, Top 182@node overview
185@chapter Operation Overview 183@chapter Operation Overview
186@cindex operation 184@cindex operation
187@cindex overview 185@cindex overview
188 Usually, @command{wydawca} is installed on the machine that receives 186 Usually, @command{wydawca} is installed on the machine that receives
189release uploads and is run periodically as a cron-job. It supposes 187release uploads. It may be run either periodically as a cron-job, or
190that both upload and distribution directories are accessible in the 188as a standalone daemon. It supposes that both upload and distribution
191local file system hierarchy. If that is not the case (e.g. if upload 189directories are accessible in the local file system hierarchy. If that
192and distribution sites are handled by different machines), one of them 190is not the case (e.g. if upload and distribution sites are handled by
193should be mounted using @acronym{NFS}. Future versions will contain 191different machines), one of them should be mounted using
194special provisions for that case. 192@acronym{NFS}. Future versions will contain special provisions for
195 193that case.
196@cindex directory pair 194
195@cindex spool
197@cindex upload directory 196@cindex upload directory
198@cindex directory, upload 197@cindex directory, upload
199@cindex source directory 198@cindex source directory
@@ -202,11 +201,11 @@ special provisions for that case.
202@cindex directory, distribution 201@cindex directory, distribution
203@cindex destination directory 202@cindex destination directory
204@cindex directory, destination 203@cindex directory, destination
205 A configuration file supplies the utility with the set of 204 A configuration file defines a set of @dfn{spools}, i.e. pairs of
206@dfn{directory pairs}, i.e. pairs of upload and corresponding 205upload and corresponding distribution directories. In
207distribution directories. In @command{wydawca} terminology, upload 206@command{wydawca} terminology, upload directories are also called
208directories are also called @dfn{source}, and distribution directories 207@dfn{source}, and distribution directories -- @dfn{destination}
209-- @dfn{destination} directories. The file also supplies all the information 208directories. The file also supplies all the information
210necessary to access user and project databases. 209necessary to access user and project databases.
211 210
212 When started, @command{wydawca} scans each source directory and 211 When started, @command{wydawca} scans each source directory and
@@ -254,12 +253,13 @@ this stage of the processing, the uploaded files are actually moved to
254their destination directories, requested symbolic links are created, 253their destination directories, requested symbolic links are created,
255etc. 254etc.
256 255
257@node starting, configuring, overview, Top 256@node starting
258@chapter How to invoke @command{wydawca}. 257@chapter How to invoke @command{wydawca}.
259@cindex invocation 258@cindex invocation
260@anchor{config-file} 259@anchor{config-file}
261@xopindex{config-file, described} 260@xopindex{config-file, described}
262@sopindex{c, described} 261@sopindex{c, described}
262@UNREVISED{}
263 @command{Wydawca} gets all information it needs from its 263 @command{Wydawca} gets all information it needs from its
264@dfn{configuration file} (@pxref{wydawca.rc}). The default 264@dfn{configuration file} (@pxref{wydawca.rc}). The default
265configuration file is @file{@var{sysconfdir}/wydawca.rc}, but if it is 265configuration file is @file{@var{sysconfdir}/wydawca.rc}, but if it is
@@ -292,8 +292,7 @@ the standard error.
292@xopindex{cron, described} 292@xopindex{cron, described}
293 Usually you will run @command{wydawca} as a cron job. In that case, 293 Usually you will run @command{wydawca} as a cron job. In that case,
294it seldom needs any additional arguments, but we suggest to use 294it seldom needs any additional arguments, but we suggest to use
295@option{--cron} command line option anyway. Currently, its effect is 295@option{--cron} command line option anyway.
296the same as @option{--syslog}, but it may change in the future.
297 296
298@anchor{debug} 297@anchor{debug}
299@xopindex{debug, described} 298@xopindex{debug, described}
@@ -334,179 +333,379 @@ $ wydawca -c new.cfg --dry-run
334@option{--help} (@option{-h}) prints a short usage summary, and 333@option{--help} (@option{-h}) prints a short usage summary, and
335@option{--version} (@option{-v}) prints program version number. 334@option{--version} (@option{-v}) prints program version number.
336 335
337@node configuring, wydawca.rc, starting, Top 336@node configuring
338@chapter How to Configure @command{wydawca}. 337@chapter How to Configure @command{wydawca}.
339@UNREVISED 338 Upon startup, @command{wydawca} reads its settings from the
340 The @command{wydawca} configuration file has a simple line-oriented 339@dfn{configuration file} @file{wydawca.rc}. By default it is located
341syntax. Empty lines are ignored. Comments are introduced by a pound 340in @var{$sysconfidr} (i.e., in most cases @file{/usr/local/etc}, or
342sign (@samp{#}): everything starting from the first occurrence of 341@file{/etc}), but an alternative location may be specified using
343@samp{#} up to the end of line is ignored as well. Non-empty 342@option{--config} command line option (@FIXME-pxref{--config}).
344and non-comment lines must contain valid configuration statements. 343
345 344 If any errors are encountered in the configuration file, the program
346 A @dfn{configuration statement} consists of a @dfn{command word} 345reports them on its error output and exits with a non-zero status.
347optionally followed by one or more @dfn{arguments}, separated by any 346
348amount of whitespace. There are @samp{simple} and @samp{compound} 347@xopindex{lint, introduced}
349configuration statements. @dfn{Simple statements} occupy a single 348 To test the configuration file without starting the server use
350line, for example: 349@option{--lint} (@option{-t}) command line option. It causes
350@command{wydawca} to check configuration file for syntax errors and
351other inconsistencies and to exit with status 0 if no errors were
352detected, and withs status 1 otherwise.
353
354@opindex -E, introduced
355@xopindex{no-preprocessor, introduced}
356 Before parsing, configuration file is preprocessed using
357@command{m4} (@FIXME-pxref{Preprocessor}). To see the preprocessed
358configuration without actually parsing it, use @option{-E} command
359line option. To avoid preprocessing it, use
360@option{--no-preprocessor} option.
361
362@xopindex{config-help, introduced}
363 The rest of this section describes the configuration file syntax in
364detail. You can receive a concise summary of all configuration
365directives any time by running @command{wydawca --config-help}.
366
367@menu
368* Syntax:: Configuration file syntax.
369* syslog::
370* sql::