]> git.decadent.org.uk Git - dak.git/blob - docs/README.config
Add CopyKatie support a la CopyChanges
[dak.git] / docs / README.config
1 Explanation of configuration files options for katie
2 ====================================================
3
4 DB
5 --
6
7 Essential.  List of database details, e.g.
8
9 | DB
10 | {
11 |   Name "projectb";
12 |   Host ""; 
13 |   Port -1;
14 | };
15
16 If the database is local, Host should be blank.  If the port is the
17 default (5432), it should be set to -1.
18
19 ================================================================================
20
21 Dir
22 ---
23
24 Mandatory.  List of directory locations, e.g.
25
26 | Dir
27 | {
28 |   RootDir "/org/ftp.debian.org/ftp/";
29 |   PoolDir "/org/ftp.debian.org/ftp/pool/";
30 |   TemplatesDir "/org/ftp.debian.org/katie/templates/";
31 |   PoolRoot "pool/";
32 |   IncomingDir "/org/ftp.debian.org/incoming/";
33 |   OverrideDir "/org/ftp.debian.org/scripts/override/";
34 |   ListsDir "/org/ftp.debian.org/database/dists/";
35 |   LogDir "/org/ftp.debian.org/log/";
36 |   Morgue "/org/ftp.debian.org/morgue/";
37 | };
38
39 ================================================================================
40
41 Suite
42 -----
43
44 Mandatory.  List of all suites, e.g. 
45
46 | Suite
47 | {
48 |   Unstable
49 |   {
50 |       Components 
51 |       {
52 |         main "";
53 |       };
54 |       Architectures 
55 |       {
56 |         "source" ""; 
57 |         "all" "";
58 |         "i386" "";
59 |       };
60 |       Announce "debian-devel-changes@lists.debian.org";
61 |       Origin "Debian";
62 |       Description "Debian Unstable - Not Released";
63 |       CodeName "sid";
64 |       OverrideCodeName "sid";
65 |       Priority "5";
66 |   };
67 | };
68
69 Announce controls where "Installed foo" mails are sent; leave empty to
70 not send any.  CodeName, Origin and Description are used by ziyi and
71 put in the Release files.  OverrideCodeName is used by Denise.
72 Priority determines which suite is used for the Maintainers file as
73 generated by charisma/da_mkmaintainers (highest wins).
74
75 If CopyChanges is present it should be a path into the archive
76 (i.e. "Dir::RootDir"); any upload targeted for a suite with this
77 config option present will have the .changes file copied into that
78 path.
79
80 If CopyKatie is present it should be an absolute path; any upload
81 targeted for a suite with this config option present will have the
82 .katie file copied into that path.  This option is similar to
83 CopyChanges and will most often be used with it; they're seperate
84 because .changes files are mirrored and .katie files aren't, so the
85 paths will usually be different.
86
87 ================================================================================
88
89 Dinstall
90 --------
91
92 Mandatory.  List of dinstall options, e.g.:
93
94 | Dinstall
95 | {
96 |    PGPKeyring "/org/keyring.debian.org/keyrings/debian-keyring.pgp";
97 |    GPGKeyring "/org/keyring.debian.org/keyrings/debian-keyring.gpg";
98 |    SigningKeyring "/org/ftp.debian.org/s3kr1t/dot-gnupg/secring.gpg";
99 |    MyEmailAddress "Debian Installer <installer@ftp-master.debian.org>";
100 |    MyAdminAddress "ftpmaster@debian.org";
101 |    MyHost "debian.org";  // used for generating user@my_host addresses in e.g. manual_reject()
102 |    MyDistribution "Debian";
103 |    BugServer "bugs.debian.org";
104 |    PackagesServer "packages.debian.org";
105 |    TrackingServer "packages.qa.debian.org";
106 |    LockFile "/org/ftp.debian.org/katie/lock";
107 |    Bcc "archive@ftp-master.debian.org";
108 |    GroupOverrideFilename "override.group-maint";
109 |    FutureTimeTravelGrace "8640"; // 6 hours
110 |    PastCutoffYear "1984";
111 |    BXANotify 0;
112 | };
113
114 PGPKeyring and GPGKeyring are mandatory fields which are filenames of
115 the PGP and GnuPG keyrings to be used by katie respectively.
116
117 SigningKeyring is the private keyring used by ziyi.
118
119 MyEmailAddress is used as the From: line for sending mails as a
120 script/daemon.  MyAdminAddress is used as a contact address in mails.
121
122 MyDistribution is used in emails sent out by katie and others.
123
124 BugServer is used by katie and melanie when closing bugs.
125
126 PackagesServer is used by melanie when carbon-copying a bug close mail
127 to a package maintainer.
128
129 TrackingServer is used by katie and melanie to send messages for the
130 maintainer also to an alias for people tracking a specific source
131 package.
132
133 LockFile is a mandatory field and contains the filename of the
134 lockfile used by dinstall when in action mode (i.e. not using
135 -n/--no-action).
136
137 All sent mail is blind carbon copied to the email
138 address in Bcc if it's not blank.  
139
140 GroupOverrideFilename, if non-blank, is the override file which
141 contains the list of email addresses which, if part of the Maintainer
142 field, cause uploads to always be treated as maintainer uploads.
143
144 FutureTimeTravelGrace specifies how many seconds into the future
145 timestamps are allowed to be inside a deb before being rejected.
146 PastCutoffYear specifies the cut-off year which is used when deciding
147 whether or not to reject packages based on the file timestamp.
148
149 If BXANotify is non-zero/blank a (Debian-specfic) BXA notification is sent.
150
151 ================================================================================
152
153 Archive
154 -------
155
156 Mandatory.  List of all archives, e.g.
157
158 | Archive
159 | {
160 |   ftp-master
161 |   {
162 |     OriginServer "ftp-master.debian.org";
163 |     PrimaryMirror "ftp.debian.org";
164 |     Description "Master Archive for the Debian project";
165 |   };
166 | };
167
168 OriginServer and PrimaryMirror are mandatory and are used melanie's
169 bug closing mail templates.  The host name and it's OriginServer and
170 Description are part of the SQL database in the 'archive' table.
171
172 ================================================================================
173
174 Architectures
175 -------------
176
177 Mandatory.  List of all architectures, e.g.
178
179 | Architectures
180 | {
181 |   source "Source";
182 |   all    "Architecture Independent";
183 |   i386   "Intel ia32";
184 | };
185
186 Both values go into the SQL database's 'architecture' table.
187 Description is currently unused.
188
189 ================================================================================
190
191 Component
192 ---------
193
194 Mandatory.  List of all components, e.g.
195
196 | Component
197 | {
198 |   main
199 |   {
200 |       Description "Main";
201 |       MeetsDFSG "true";
202 |   };
203 | };
204
205 All three values go into the SQL database's 'component' table.
206 MeetsDFSG is currently unused.
207
208 ================================================================================
209
210 Section
211 -------
212
213 Mandatory.  List of all valid sections, e.g.
214
215 | Section
216 | {
217 |   base "";
218 | };
219
220 The section goes into the 'section' table in SQL database.
221
222 ================================================================================
223
224 Priority
225 --------
226
227 Mandatory.  List of all valid priorities, e.g.
228
229 | Priority
230 | {
231 |   required 1;
232 |   important 2;
233 |   standard 3;
234 |   optional 4;
235 |   extra 5;
236 |   source 0; // i.e. unused
237 | };
238
239 The value is the sorting key.  Both the section and it's sorting key
240 go into the SQL database's 'priority' table.
241
242 ================================================================================
243
244 OverrideType
245 ------------
246
247 Mandatory.  List of al valid override types, e.g.
248
249 | OverrideType
250 | {
251 |   deb "";
252 |   dsc "";
253 |   udeb "";
254 | };
255
256 The type goes into the 'override_type' table in the SQL database.
257
258 ================================================================================
259
260 Location
261 --------
262
263 Mandatory.  List all locations, e.g.
264
265 | Location
266 | {
267 |   /org/ftp.debian.org/ftp/pool/
268 |     {
269 |       Archive "ftp-master";
270 |       Type "pool";
271 |     };
272 | };
273
274 There are three types: 'legacy', 'legacy-mixed' and 'pool'.  'legacy'
275 and 'pool' are assumed to have sections for all components listed in
276 the Components section 'legacy-mixed' are assumed to mix all
277 components into one location.  The Archive and Type sections go into
278 the SQL database's 'location' table.
279
280 [Note: yes, this is horrible, it dates back to the original `import
281        the existent archive into the SQL Database' script (neve) and
282        isn't otherwise used.  It should be revisted at some stage.]
283
284 ================================================================================
285
286 -- 
287 James Troup <james@nocrew.org>, Horsforth, Leeds
288 Wed, 26 Sep 2001 03:20:39 +0100