README.config 10.2 KB
Newer Older
M
Mark Hymers 已提交
1 2 3
///////////////////////////////////////////////////////////
// Example annotated configuration file for dak
///////////////////////////////////////////////////////////
J
sync  
James Troup 已提交
4

5 6 7 8 9 10 11 12 13
///////////////////////////////////////////////////////////
// Common settings
///////////////////////////////////////////////////////////
Common
{
    //// ThreadCount (optional):  Maximum number of threads to use.  Defaults to 1
    ThreadCount 1;
};

M
Mark Hymers 已提交
14 15 16
///////////////////////////////////////////////////////////
// Essential.  List of database details.
///////////////////////////////////////////////////////////
J
sync  
James Troup 已提交
17
DB
M
Mark Hymers 已提交
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105
{
    //// Name (required): The name of the PostgreSQL database which has been
    //// created for dak.
    Name "projectb";

    //// Host (optional): The name of the host on which the database is located.
    //// Not necessary if the the database is local.
    //Host "";

    //// Port (optional): The port of the database if it is remote.  If the port
    //// is the default value (5432), this option can be set to -1.
    //Port -1;

    //// PoolSize (optional): should be at least ThreadCount + 1
    PoolSize 5;

    //// MaxOverflow (optional): shouldn't exceed postgresql.conf's
    //// max_connections - PoolSize
    MaxOverflow 13;

    //// Unicode (optional but seriously suggested).  Should be false for
    //// encoding == SQL_ASCII which is highly recommended.  Do not set this to
    //// anything else unless you really know what you're doing.
    Unicode "false";
};

///////////////////////////////////////////////////////////
// Dinstall general settings
///////////////////////////////////////////////////////////
Dinstall
{
    //// SigningKeyring (optional): this is the private keyring used by
    //// 'dak generate-releases'.
    SigningKeyring "/srv/dak/s3kr1t/dot-gnupg/secring.gpg";

    //// SigningPubKeyring (optional): this is the public keyring used by
    //// 'dak generate-releases'.
    SigningPubKeyring "/srv/dak/s3kr1t/dot-gnupg/pubring.gpg";

    //// Options::No-Mail (optional): Highly recommended.  This prevents dak
    //// from spamming people you didn't mean it to.  If you're not using this,
    //// you almost certainly want to use the MailWhiteList option
    Options::No-Mail "true";

    //// MailWhiteList (optional).  If you're not using No-Mail, this provides
    //// a list of email addresses or regular expressions, one per line which
    //// dak is allowed to email.  Regular expressions need to be prefixed by "RE:".
    //// Examples: "jane.doe@domain.com" or "RE:jane[^@]@domain.com", where the first will
    //// only allow to mail jane.doe@domain.com while the second will mail all of jane*@domain.com
    //// MailWhiteList "/some/path/to/a/file";

    //// SendmailCommand (required unless No-Mail is set): command to call the MTA.
    // SendmailCommand "/usr/sbin/sendmail -oi -t";

    //// MyEmailAddress (required): this is used as the From: line for sending mails
    //// as a script/daemon.
    MyEmailAddress "FTP Masters <ftpmaster@example.org>";

    //// MyAdminAddress (required): used as a contact address in mails.
    MyAdminAddress "ftpmaster@example.org";

    //// MyDistribution (required): this variable is used in emails sent out by
    //// dak and others.  It should indicate the name of the distribution.
    MyDistribution "MyDistro";

    //// BugServer (optional): is used by 'dak process-upload' and 'dak rm'
    //// when closing bugs.
    // BugServer "bugs.example.org";

    //// CloseBugs (optional): a boolean (default: no); if true the automated bug
    //// closing feature of dinstall is activated.  Must have BugServer set
    //// for this to work.
    CloseBugs "true";

    //// PackagesServer (optional): used by 'dak rm' and 'dak override' when
    //// carbon-copying a bug close mail to a package maintainer.
    // PackagesServer "packages.example.org";

    //// All sent mail is blind carbon copied to the email address in Bcc if it's
    //// not blank.
    // Bcc "archive@example.org";

    //// BXANotify (optional): a boolean (default: false); if true (Debian-specific)
    //// BXA notification is sent.  The template for the BXA notification is located
    //// in Dir::Templates/process-new.bxa_notification and should be changed if this
    //// option is set.
    // BXANotify "true";

106
    //// FutureTimeTravelGrace (optional): specifies how many seconds into the
M
Mark Hymers 已提交
107
    //// future timestamps are allowed to be inside a deb before being rejected.
108 109
    //// Defaults to 86400 (24 hours) if not specified.
    FutureTimeTravelGrace 86400;
M
Mark Hymers 已提交
110

111
    //// PastCutoffYear (optional): specifies the cut-off year which is used when
M
Mark Hymers 已提交
112
    //// deciding whether or not to reject packages based on the file timestamp.
113 114
    //// Defaults to "1975" if not specified.
    PastCutoffYear "1975";
M
Mark Hymers 已提交
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143

    //// 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 dak process-upload will REJECT rather than SKIP the package.
    SkipTime 300;

    //// OverrideDisparityCheck (optional): a boolean (default: false); if true,
    //// dak process-upload compares an uploads section/priority with the overrides and whines
    //// at the maintainer if they differ.
    OverrideDisparityCheck "false";

    //// OverrideMaintainer (optional): be used to globally override the
    //// __MAINTAINER_TO__ and __MAINTAINER_FROM__ variables in template mails.
    //// Use with caution.
    // OverrideMaintainer "";

    //// DefaultSuite (optional): which suite to default to where one isn't
    //// specified.  Defaults to "unstable" if not set.
    // DefaultSuite "unstable";

    //// LintianTags (optional): A set of lintian tags on which to reject
    //// packages at upload time.  Format is a YAML file; see the ftp-master
    //// version for an example.
    // LintianTags "/srv/dak/dak/config/debian/lintian.tags";

    //// ReleaseTransitions (optional): YAML File for blocking uploads to unstable
    // ReleaseTransitions "/srv/dak/web/transitions.yaml";

    //// KeyAutoFetch (optional): boolean (default: false), which if set (and
J
Jakub Wilk 已提交
144
    //// not overridden by explicit argument to check_signature()) will enable
M
Mark Hymers 已提交
145
    //// auto key retrieval.  Requires KeyServer variable be
M
Mark Hymers 已提交
146 147 148 149 150 151 152 153 154 155 156 157 158
    //// set.  NB: you should only enable this variable on production systems
    //// if you have strict control of your upload queue.
    // KeyAutoFetch "false";

    //// KeyServer (optional): keyserver used for key auto-retrieval
    //// (c.f. KeyAutoFetch).
    // KeyServer "wwwkeys.eu.pgp.net";
};


///////////////////////////////////////////////////////////
// Dir (mandatory).  List of directory locations, e.g.
///////////////////////////////////////////////////////////
J
sync  
James Troup 已提交
159
Dir
M
Mark Hymers 已提交
160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184
{
    //// Root (required): Specifies the path of the root of the FTP archive.
    Root "/srv/dak/ftp/";

    //// Pool (required): This variable specifies the path of the pool
    //// directory.  Debian packages will be placed in the pool by
    //// 'dak process-upload'
    Pool "/srv/dak/ftp/pool/";

    //// Templates (required): dak sends various mails and uses templates from
    //// this directory.
    Templates "/srv/dak/dak/templates/";

    //// Override (optional): This directory optionally stores override files (used
    //// by 'dak make-overrides').
    // Override "/src/dak/scripts/override/";

    //// Lists (optional): This directory holds file lists used by apt-ftparchive to
    //// generate Packages and Sources files (used by 'dak make-suite-file-list').
    //// Deprecated in favour of use of generate-packages-sources2
    // Lists "/srv/dak/database/dists/";

    //// Log (required): Directory to store dak logs in
    Log "/srv/dak/log/";

M
Mark Hymers 已提交
185 186 187
    //// Lock directory (required): Directory to store dak locks in
    Lock "/srv/dak/lock/";

M
Mark Hymers 已提交
188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207
    //// Morgue (required): Removed files are moved there.  The morgue has various
    //// sub-directories, including (optionally) those defined by
    //// Clean-Queues::MorgueSubDir and Clean-Suites::MorgueSubDir.
    Morgue "/srv/dak/morgue/";

    //// UrgencyLog (optional): If this directory is specified, 'dak
    //// process-upload' will store the urgency value of each upload.  This
    //// is mainly used for britney (the testing script).
    // UrgencyLog "/srv/dak/testing/urgencies/";

    //// Done (required): Directory in which to store processed .changes files
    Done "/srv/dak/queue/done/";

    //// BTSVersionTrack (optional): this directory holds the DebBugs
    //// Version Tracking support files.
    // BTSVersionTrack "/srv/dak/btsversiontrack";

    //// Queue (required): This sub-tree defines important directories for the
    //// incoming queue.  The following variables have to be set: Byhand, New
    //// NewStage, Reject, Unchecked.  An explanation of the function of
J
Jakub Wilk 已提交
208
    //// these directories can be found in README.new-incoming.
M
Mark Hymers 已提交
209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226
    Queue
    {  
        Byhand "/srv/dak/queue/byhand/";
        New "/srv/dak/queue/new/";
        NewStage "/srv/dak/queue/newstage/";
        Reject "/srv/dak/queue/reject/";
        Unchecked "/srv/dak/queue/unchecked/";
    };
};

///////////////////////////////////////////////////////////
// SuiteMappings: (optional).  List of mappings for the Distribution file in a
// .changes file, e.g.:
///////////////////////////////////////////////////////////

// There are three mapping types:
//
// (1) map <source> <dest>
J
Jakub Wilk 已提交
227
// Any target suite of '<source>' is unconditionally overridden to '<dest>'.
M
Mark Hymers 已提交
228 229 230 231 232 233 234
// (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.
J
sync  
James Troup 已提交
235

J
update  
James Troup 已提交
236
SuiteMappings
M
Mark Hymers 已提交
237 238 239 240 241 242 243 244 245 246 247 248 249
{
   "map stable proposed-updates";
   "map frozen unstable";
   "map-unreleased stable unstable";
   "map-unreleased proposed-updates unstable";
   "ignore testing";
};

///////////////////////////////////////////////////////////
// Urgency (mandatory) 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.
///////////////////////////////////////////////////////////
J
sync  
James Troup 已提交
250

251
Urgency
M
Mark Hymers 已提交
252 253 254 255 256 257 258 259 260 261 262 263
{
  Default "low";
  Valid
  {
    low;
    medium;
    high;
    emergency;
    critical;
  };
};