]> git.decadent.org.uk Git - dak.git/blobdiff - docs/README.config
2004-04-01 James Troup <james@nocrew.org> * jennifer (get_changelog_versions):...
[dak.git] / docs / README.config
index 67b487521c39577c75a977f98f3d9bb2caee4e0a..31095d25c429b7255412f7608ebf045be445e9aa 100644 (file)
@@ -13,8 +13,14 @@ Essential.  List of database details, e.g.
 |   Port -1;
 | };
 
 |   Port -1;
 | };
 
-If the database is local, Host should be blank.  If the port is the
-default (5432), it should be set to -1.
+Name (required): The name of the PostgreSQL database which has been created
+for katie.
+
+Host (required): The name of the host on which the database is located.  If
+the database is local, Host should be blank.
+
+Port (required): The port of the database.  If the port is the default
+value (5432), this option should be set to -1.
 
 ================================================================================
 
 
 ================================================================================
 
@@ -25,17 +31,73 @@ Mandatory.  List of directory locations, e.g.
 
 | Dir
 | {
 
 | Dir
 | {
-|   RootDir "/org/ftp.debian.org/ftp/";
-|   PoolDir "/org/ftp.debian.org/ftp/pool/";
-|   TemplatesDir "/org/ftp.debian.org/katie/templates/";
+|   Root "/org/ftp.debian.org/ftp/";
+|   Pool "/org/ftp.debian.org/ftp/pool/";
+|   Templates "/org/ftp.debian.org/katie/templates/";
 |   PoolRoot "pool/";
 |   PoolRoot "pool/";
-|   IncomingDir "/org/ftp.debian.org/incoming/";
-|   OverrideDir "/org/ftp.debian.org/scripts/override/";
-|   ListsDir "/org/ftp.debian.org/database/dists/";
-|   LogDir "/org/ftp.debian.org/log/";
+|   Override "/org/ftp.debian.org/scripts/override/";
+|   Lists "/org/ftp.debian.org/database/dists/";
+|   Log "/org/ftp.debian.org/log/";
 |   Morgue "/org/ftp.debian.org/morgue/";
 |   Morgue "/org/ftp.debian.org/morgue/";
+|   MorgueReject "reject";
+|   AcceptedAutoBuild "/org/incoming.debian.org/buildd/";
+|   UrgencyLog "/org/ftp.debian.org/testing/urgencies/";
+|   Queue
+|   {  
+|     Accepted "/org/ftp.debian.org/queue/accepted/";
+|     Byhand "/org/ftp.debian.org/queue/byhand/";
+|     Done "/org/ftp.debian.org/queue/done/";
+|     Holding "/org/ftp.debian.org/queue/holding/";
+|     New "/org/ftp.debian.org/queue/new/";
+|     Reject "/org/ftp.debian.org/queue/reject/";
+|     Unchecked "/org/ftp.debian.org/queue/unchecked/";
+|   };
 | };
 
 | };
 
+Root (required): Specifies the path of the root of the FTP archive.
+
+Pool (required): This variable specifies the path of the pool directory.
+Debian packages will be placed in the pool by kelly after they have been
+accepted by jennifer.
+
+Templates (required): katie sends various mails and uses templates from
+this directory.
+
+PoolRoot (required): This variable specifies the basename of the pool
+directory.
+
+Override (optional): This directory optionally stores override files (used
+by denise).
+
+Lists (optional): This directory holds file lists used by apt-ftparchive to
+generate Packages and Sources files (used by jenna).
+
+Log (required): Log files are put in this directory.
+
+Morgue (required): Removed files are moved there.  The morgue has various
+sub-directories, including (optionally) those defined by
+Shania::MorgueSubDir and Rhona::MorgueSubDir.
+
+MorgueReject (required): if katie cannot move a rejected package to
+Dir::Queue::Reject, it will try to move it to the Dir::MorgueReject
+directory located under Dir::Morgue.
+
+AcceptedAutoBuild (optional): This variable is only relevant if any suites
+are to be auto built, i.e. if Dinstall::AcceptedAutoBuildSuites has any
+values.
+
+UrgencyLog (optional): If this directory is specified, kelly will store the
+urgency value of each upload.  This is mainly used for britney (the testing
+script).
+
+Queue (required): This sub-tree defines important directories for the
+incoming queue.  The following variables have to be set: Accepted, Byhand
+Done, Holding, New, Reject, Unchecked.  An explanation of the function of
+these directores can be found in README.new-incoming.
+
+Queue::BTSVersionTrack (optional): this directory holds the DebBugs
+Version Tracking support files.
+
 ================================================================================
 
 Suite
 ================================================================================
 
 Suite
@@ -49,13 +111,13 @@ Mandatory.  List of all suites, e.g.
 |   {
 |      Components 
 |      {
 |   {
 |      Components 
 |      {
-|        main "";
+|        main;
 |      };
 |      Architectures 
 |      {
 |      };
 |      Architectures 
 |      {
-|        "source" ""
-|        "all" "";
-|        "i386" "";
+|        source
+|        all;
+|        i386;
 |      };
 |      Announce "debian-devel-changes@lists.debian.org";
 |      Origin "Debian";
 |      };
 |      Announce "debian-devel-changes@lists.debian.org";
 |      Origin "Debian";
@@ -66,11 +128,67 @@ Mandatory.  List of all suites, e.g.
 |   };
 | };
 
 |   };
 | };
 
-Announce controls where "Installed foo" mails are sent; leave empty to
-not send any.  CodeName, Origin and Description are used by ziyi and
-put in the Release files.  OverrideCodeName is used by Denise.
-Priority determines which suite is used for the Maintainers file as
-generated by charisma/da_mkmaintainers (highest wins).
+Announce (optional): controls where "Installed foo" mails are sent.
+
+CodeName, Origin and Description (optional): This settings are used by ziyi
+and put in the Release files.
+
+OverrideCodeName (optional): used by Denise.
+
+Priority (optional) determines which suite is used for the Maintainers file
+as generated by charisma/da_mkmaintainers (highest wins).
+
+CopyChanges (optional): if this variable is present it should be a path
+into the archive (i.e. "Dir::RootDir"); any upload targeted for a suite
+with this config option present will have the .changes file copied into
+that path.
+
+CopyKatie (optional): if this is present it should be an absolute path; any
+upload targeted for a suite with this config option present will have the
+.katie file copied into that path.  This option is similar to CopyChanges
+and will most often be used with it; they're seperate because .changes
+files are mirrored and .katie files aren't, so the paths will usually be
+different.
+
+There are more optional variables, such as VersionChecks.  Please see
+katie.conf for examples.
+
+================================================================================
+
+SuiteMappings
+-------------
+
+Optional.  List of mappings for the Distribution file in a .changes file, e.g.:
+
+| SuiteMappings
+| {
+|    "map stable proposed-updates";
+|    "map frozen unstable";
+|    "map-unreleased stable unstable";
+|    "map-unreleased proposed-updates unstable";
+|    "ignore testing";
+| };
+
+There are three mapping types:
+
+(1) map <source> <dest>
+
+      Any target suite of '<source>' is unconditionally overriden to
+      '<dest>'.
+
+(2) map-unreleased <source> <dest>
+
+      Any upload targeted for suite '<source>' will be mapped to
+      '<dest>' iff it contains uploads for an architecture that is not
+      part of '<source>'.
+
+(3) ignore <suite>
+
+      Any target suite of '<suite>' is unconditionally removed from
+      the list of target suites.  NB: if the upload had only one
+      target suite this will lead to rejection.
+
+NB: ordering is not guaranteed.
 
 ================================================================================
 
 
 ================================================================================
 
@@ -84,47 +202,91 @@ Mandatory.  List of dinstall options, e.g.:
 |    PGPKeyring "/org/keyring.debian.org/keyrings/debian-keyring.pgp";
 |    GPGKeyring "/org/keyring.debian.org/keyrings/debian-keyring.gpg";
 |    SigningKeyring "/org/ftp.debian.org/s3kr1t/dot-gnupg/secring.gpg";
 |    PGPKeyring "/org/keyring.debian.org/keyrings/debian-keyring.pgp";
 |    GPGKeyring "/org/keyring.debian.org/keyrings/debian-keyring.gpg";
 |    SigningKeyring "/org/ftp.debian.org/s3kr1t/dot-gnupg/secring.gpg";
+|    SendmailCommand "/usr/sbin/sendmail -odq -oi -t";
 |    MyEmailAddress "Debian Installer <installer@ftp-master.debian.org>";
 |    MyAdminAddress "ftpmaster@debian.org";
 |    MyHost "debian.org";  // used for generating user@my_host addresses in e.g. manual_reject()
 |    MyDistribution "Debian";
 |    BugServer "bugs.debian.org";
 |    PackagesServer "packages.debian.org";
 |    MyEmailAddress "Debian Installer <installer@ftp-master.debian.org>";
 |    MyAdminAddress "ftpmaster@debian.org";
 |    MyHost "debian.org";  // used for generating user@my_host addresses in e.g. manual_reject()
 |    MyDistribution "Debian";
 |    BugServer "bugs.debian.org";
 |    PackagesServer "packages.debian.org";
-|    NewAckList "/org/ftp.debian.org/katie/log";
+|    TrackingServer "packages.qa.debian.org";
 |    LockFile "/org/ftp.debian.org/katie/lock";
 |    Bcc "archive@ftp-master.debian.org";
 |    GroupOverrideFilename "override.group-maint";
 |    LockFile "/org/ftp.debian.org/katie/lock";
 |    Bcc "archive@ftp-master.debian.org";
 |    GroupOverrideFilename "override.group-maint";
+|    FutureTimeTravelGrace 28800; // 8 hours
+|    PastCutoffYear "1984";
+|    BXANotify "false";
+|    AcceptedAutoBuildSuites
+|    {
+|      unstable;
+|    };
 | };
 
 | };
 
-PGPKeyring and GPGKeyring are mandatory fields which are filenames of
-the PGP and GnuPG keyrings to be used by katie respectively.
+PGPKeyring and GPGKeyring (required): filenames of the PGP and GnuPG
+keyrings to be used by katie respectively.
+
+SigningKeyring (optional): this is the private keyring used by ziyi.
+
+SendmailCommand (required): command to call the MTA.
+
+MyEmailAddress (required): this is used as the From: line for sending mails
+as a script/daemon.
+
+MyAdminAddress (required): used as a contact address in mails.
+
+MyDistribution (required): this variable is used in emails sent out by
+katie and others.  It should indicate the name of the distribution.
+
+BugServer (required): is used by katie and melanie when closing bugs.
+
+PackagesServer (requried): used by melanie when carbon-copying a bug close
+mail to a package maintainer.
+
+TrackingServer (optional): used by katie and melanie to send messages for
+the maintainer also to an alias for people tracking a specific source
+package.
 
 
-SigningKeyring is the private keyring used by ziyi.
+LockFile (required): contains the filename of the lockfile used by dinstall
+when in action mode (i.e. not using -n/--no-action).
 
 
-MyEmailAddress is used as the From: line for sending mails as a
-script/daemon.  MyAdminAddress is used as a contact address in mails.
+All sent mail is blind carbon copied to the email address in Bcc if it's
+not blank.
 
 
-MyDistribution is used in emails sent out by katie and others.
+GroupOverrideFilename (optional): this is the override file which contains
+the list of email addresses which, if part of the Maintainer field, cause
+uploads to always be treated as maintainer uploads.
 
 
-BugServer is used by katie and melanie when closing bugs.
+FutureTimeTravelGrace (required): specifies how many seconds into the
+future timestamps are allowed to be inside a deb before being rejected.
 
 
-PackagesServer is used by melanie when carbon-copying a bug close mail
-to a package maintainer.
+PastCutoffYear (required): specifies the cut-off year which is used when
+deciding whether or not to reject packages based on the file timestamp.
 
 
-NewAckList is a mandatory field and contains the filename of list of
-NEW packages dinstall knows about and is used when dinstall is running
-in -k/--ack-new mode (usually in the daily cron run).
+BXANotify (optional): a boolean (default: no); if true (Debian-specific)
+BXA notification is sent.  The template for the BXA notification is located
+in Dir::Templates/lisa.bxa_notification and should be changed if this
+option is set.
 
 
-LockFile is a mandatory field and contains the filename of the
-lockfile used by dinstall when in action mode (i.e. not using
--n/--no-action).
+OverrideDisparityCheck (optional): a boolean (default: no); if true,
+jennifer compares an uploads section/priority with the overrides and whines
+at the maintainer if they differ.
 
 
-All sent mail is blind carbon copied to the email
-address in Bcc if it's not blank.  
+CloseBugs (optional): a boolean (default: no); if true the automated bug
+closing feature of dinstall is activated.
 
 
-GroupOverrideFilename, if non-blank, is the override file which
-contains the list of email addresses which, if part of the Maintainer
-field, cause uploads to always be treated as maintainer uploads.
+AcceptedAutoBuildSuites (optional): a list of suites which should be auto
+build.
+
+SpecialAcceptedAutoBuild is a boolean; if true it activates support
+for auto-building from accepted.
+
+OverrideMaintainer (optional): be used to globally override the
+__MAINTAINER_TO__ and __MAINTAINER_FROM__ variables in template mails.
+Use with caution.
+
+SkipTime (required): an integer value which is the number of seconds that a
+file must be older than (via it's last modified timestamp) before jennifer
+will REJECT rather than SKIP the package.
 
 ================================================================================
 
 
 ================================================================================
 
@@ -143,9 +305,9 @@ Mandatory.  List of all archives, e.g.
 |   };
 | };
 
 |   };
 | };
 
-OriginServer and PrimaryMirror are mandatory and are used melanie's
-bug closing mail templates.  The host name and it's OriginServer and
-Description are part of the SQL database in the 'archive' table.
+OriginServer and PrimaryMirror (required): used melanie's bug closing mail
+templates.  The host name and it's OriginServer and Description are part of
+the SQL database in the 'archive' table.
 
 ================================================================================
 
 
 ================================================================================
 
@@ -162,7 +324,7 @@ Mandatory.  List of all architectures, e.g.
 | };
 
 Both values go into the SQL database's 'architecture' table.
 | };
 
 Both values go into the SQL database's 'architecture' table.
-Description is currently unused.
+The description is currently unused.
 
 ================================================================================
 
 
 ================================================================================
 
@@ -192,7 +354,7 @@ Mandatory.  List of all valid sections, e.g.
 
 | Section
 | {
 
 | Section
 | {
-|   base "";
+|   base;
 | };
 
 The section goes into the 'section' table in SQL database.
 | };
 
 The section goes into the 'section' table in SQL database.
@@ -226,9 +388,9 @@ Mandatory.  List of al valid override types, e.g.
 
 | OverrideType
 | {
 
 | OverrideType
 | {
-|   deb "";
-|   dsc "";
-|   udeb "";
+|   deb;
+|   dsc;
+|   udeb;
 | };
 
 The type goes into the 'override_type' table in the SQL database.
 | };
 
 The type goes into the 'override_type' table in the SQL database.
@@ -255,12 +417,38 @@ the Components section 'legacy-mixed' are assumed to mix all
 components into one location.  The Archive and Type sections go into
 the SQL database's 'location' table.
 
 components into one location.  The Archive and Type sections go into
 the SQL database's 'location' table.
 
+Note that the archive value specified here must correspond to one defined
+in Archive.
+
 [Note: yes, this is horrible, it dates back to the original `import
        the existent archive into the SQL Database' script (neve) and
        isn't otherwise used.  It should be revisted at some stage.]
 
 ================================================================================
 
 [Note: yes, this is horrible, it dates back to the original `import
        the existent archive into the SQL Database' script (neve) and
        isn't otherwise used.  It should be revisted at some stage.]
 
 ================================================================================
 
+Urgency
+-------
+
+Mandatory.
+
+| Urgency
+| {
+|   Default "low";
+|   Valid
+|   {
+|     low;
+|     medium;
+|     high;
+|     emergency;
+|     critical;
+|   };
+| };
+
+This defines the valid and default urgency of an upload.  If a package is
+uploaded with an urgency not listed here, it will be rejected.
+
+================================================================================
+
 -- 
 James Troup <james@nocrew.org>, Horsforth, Leeds
 Wed, 26 Sep 2001 03:20:39 +0100
 -- 
 James Troup <james@nocrew.org>, Horsforth, Leeds
 Wed, 26 Sep 2001 03:20:39 +0100