~launchpad-pqm/launchpad/devel

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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
106
107
108
109
110
111
112
113
114
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
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
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
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
#
# This file is ordered alphabetically.  Please help keep it that way! -- mars
#

[answertracker]
# The database user which will be used to expire questions.
# datatype: string
dbuser: answertracker
storm_cache: generational
storm_cache_size: 500

# The number of days of inactivity required before a question in
# the open or needs information state is expired.
# datatype: integer
days_before_expiration: 15

# The email domain, to which incomings emails should be sent.
# datatype: string
email_domain: answers.launchpad.net


[archivepublisher]
# The database user which will be used by this process.
# datatype: string
dbuser: archivepublisher

# Location where the run-parts directories for publish-ftpmaster
# customization are to be found.  Absolute path, or path relative to the
# Launchpad source tree, or "none" to skip execution of run-parts.
#
# Under this directory, publish-ftpmaster will look for directories
# <distro>/publish-distro.d and <distro>/finalize.d.
#
# datatype: string
run_parts_location: none


[binaryfile_expire]
dbuser: binaryfile-expire
storm_cache: generational
storm_cache_size: 500


[branchscanner]
branch_revision_delete_count: 100
# The database user which will be used by this process.
# datatype: string
dbuser: branchscanner
storm_cache: generational
storm_cache_size: 500

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


[builddmaster]
# The database user which will be used by this process.
# THIS IS DEPRECATED, as the remaining code pulling this config item
# should not be and fixed to use dedicated users.
# datatype: string
dbuser: fiera
storm_cache: generational
storm_cache_size: 500

# datatype: string
default_sender_address: noreply@launchpad.net

# Command-line used to reset the virtual builder. 'vm_host'
# variable will be replaced by the context builder virtual
# machine host.
# datatype: string
vm_resume_command: echo %(vm_host)s

# The time in seconds that the builddmaster will wait for a
# reply from buildd slave.
# datatype: integer
socket_timeout: 40

# Activate the Build Notification system.
# datatype: boolean
send_build_notification: True

# datatype: string
default_sender_name: Launchpad Buildd System

# Controls the notification of sourcepackagerelease.creator.
# If disable only the default_recipient will be notified.
# datatype: boolean
notify_owner: True

# This is the command invoked by the buildd master when it wants
# to process a package upload into the launchpad. The buildd
# master splits the command on spaces so no escaping is allowed.
# If the token BUILDID is present, the build master will replace
# it with the ID of the build record for the upload.
# The build master will append the directory containing the files
# to the command before executing it.
# datatype: string
uploader: none

# Directory to be created to store build results.
# datatype: string
root: none

# Optional sources.list entry to send to build slaves when doing recipe
# builds involving bzr-builder.  Use this form so that the series is set:
# deb http://foo %(series)s main
# datatype: string
bzr_builder_sources_list: none


[buildsequencer]
# The name of the log file for the sequencer (passed to twistd)
# datatype: string
logfile: none

# If true, the buildsequencer will be started by the startup
# scripts. It makes no sense to allow the sequencer to start by
# default on a developer machine because they're unlikely to have
# a build farm of their own. This does not prevent the daemon
# from ever starting.
# datatype: boolean
launch: False

# If one of the subprocesses exits with a failure code then the
# build sequencer will email this address with the output of
# the subprocess. If this variable is set to a single dash then
# the output will simply be logged instead.
# datatype: string
mailproblemsto:

# datatype: boolean
spew: False

# datatype: string
smtphost: localhost

# datatype: string
fromaddress: launchpad@lists.canonical.com

[buildsequencer_job.template]
# The subprocess to run. You can assume LPCONFIG will be set
# and that PYTHONPATH will be set to include the launchpad/lib
# directory and that CWD will be the top level of the launchpad
# tree itself. But that is all.
# datatype: string
command: none

# The minimum delay between invocations of this job type. The
# slavescanner probably wants to be set to 5 seconds or so but
# the queue builder probably wants 5 minutes or so (900 seconds).
# Other tasks will have varying requirements placed on them.
# datatype: integer
mindelay: 1

# If set to true, the output of this job will always be logged to
# the sequencer log file.
# datatype: boolean
alwayslog: false


[buildsequencer_job.slave_scanner]
command: cronscripts/buildd-slave-scanner.py
mindelay: 5


[build_from_branch]
enabled = False


# Configuration for spawned Bazaar subprocesses.
[bzr_lpserve]
# See [error_reports].
oops_prefix: none
# See [error_reports].
error_dir: none


[calculate_bug_heat]
# The database user which will be used by this process.
# datatype: string
dbuser: calculate-bug-heat
oops_prefix: none
error_dir: none
max_heat_age: 7


[canonical]
# datatype: boolean
show_tracebacks: False

# datatype: string
noreply_from_address: noreply@launchpad.net

# datatype: existing_directory
pid_dir: /var/tmp

# datatype: string
bounce_address: bounces@canonical.com

# datatype: string
admin_address: system-error@launchpad.net

# datatype: urlbase
cron_control_url: file:cronscripts.ini


[checkwatches]
# The database user to run this process as.
# datatype: string
dbuser: checkwatches
storm_cache: generational
storm_cache_size: 500

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none

# datatype: integer
batch_query_threshold: 10

# datatype: integer
default_socket_timeout: 30

# datatype: boolean
sync_comments: True

# datatype: boolean
sync_debbugs_comments: False

# The URL to the internal XML-RPC server.
# datatype: string
xmlrpc_url: http://xmlrpc-private.launchpad.dev:8087/bugs

[checkwatches.credentials]
# Login credentials for bug trackers.
rt.example.com.username: none
rt.example.com.password: none
rt.cpan.org.username: none
rt.cpan.org.password: none
bugzilla-3.4.example.com.username: none
bugzilla-3.4.example.com.password: none
bugzilla.gnome.org.username: none
bugzilla.gnome.org.password: none
bugzilla.mozilla.org.username: none
bugzilla.mozilla.org.password: none
gcc.gnu.org.username: none
gcc.gnu.org.password: none


[codebrowse]
# Where to store codebrowse's sqlite "files changed" caches.  If
# empty, the logs will be stored in a folder called 'logs' next to the
# start-loggerhead.py script.
#
# datatype: string
cachepath:

# Where to put codebrowse's "debug.log" and "access.log" files.
#
# datatype: string
log_folder:

# Where to redirect invalid pages to.
#
# datatype: string
launchpad_root:

# The IP address to listen on.
#
# datatype: string
listen_host: 0.0.0.0

# The port to listen on.
#
# datatype: int
port: 8080

# A file path that contains a secret used for verifying cookies sent
# to codebrowse.  This file should ideally contain 64 bytes of random
# data, and should be considered private -- if it is disclosed, we
# should immediately replace it with different random data.  It should
# be readable only by the user running loggerhead.
#
# datatype: string
secret_path:

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: CB


[codehosting]
# datatype: string
logfile: -

# The location of the log file used by the LaunchpadForkingService
# datatype: string
forker_logfile: -

# Should we be using the forking daemon? Or should we be calling spawnProcess
# instead?
# datatype: boolean
use_forking_daemon: False
# What disk path will the daemon listen on
# datatype: string
forking_daemon_socket: /var/tmp/launchpad_forking_service.sock

# The prefix of the web URL for all public branches. This should end with a
# slash.
#
# If that value is changed in production, the
# branch_url_constraint_not_supermirror database constraint should be updated.
#
# datatype: urlbase
supermirror_root: http://bazaar.launchpad.net/

# The URL of the XML-RPC endpoint that handles authentication of SSH
# users. This should implement IAuthServer.
#
# datatype: string
authentication_endpoint: none

# Obsolete.
branchfs_endpoint: none

# Obsolete.
branch_puller_endpoint: none

# The URL of the XML-RPC endpoint that implements ICodehostingAPI.
#
# datatype: string
codehosting_endpoint: none

# See [error_reports].
oops_prefix: none

# datatype: string
bzr_lp_prefix: lp:

# The hosts which may be used to refer to this server's branches in lp: urls
# The comma is used to produce the empty string.
lp_url_hosts: ,production

# see [error_reports].
error_dir: none

# datatype: string
host_key_pair_path: none

# datatype: string
# The directory where the 'push' copy of hosted branches are stored. Also
# called the 'hosted area'.
hosted_branches_root: none

# datatype: string
# The directory where the mirrored copy of all branches are stored. Also
# called the 'mirrored area'.
mirrored_branches_root: /var/tmp/bazaar.launchpad.dev/mirrors

# datatype: boolean
spew: False

# datatype: boolean
launch: False

# The URL prefix for links to the Bazaar code browser.  Links are
# formed by appending the branch's unique name to the root URL.
#
# datatype: urlbase
codebrowse_root: http://bazaar.launchpad.net/

# The URL prefix for https links to the Bazaar code browser, which
# allows access to private branches authenticated with OpenID.  Links
# are formed by appending the branch's unique name to the root URL.
#
# datatype: urlbase
secure_codebrowse_root: https://bazaar.launchpad.net/


# The URL prefix for URLs that codebrowse requests should be
# internally proxied to.
# datatype: urlbase
internal_codebrowse_root:

# The URL prefix for where branches are served by URLs based on the
# branch ID.
# datatype: urlbase
internal_branch_by_id_root:

# Where the logging output of the scripts/branch-rewrite.py script
# goes.
#
# datatype: string
rewrite_script_log_file:

# datatype: string
banner: none

# datatype: string
port: tcp:5022

# Private mirror hosts
# A comma separated list of domain names that should not be shown
# to people not associated with the branch.  Any branches with a mirror
# location on one of the specified domains, or any of their subdomains
# will be hidden.  Should be removed when bug 235916 is fixed.
private_mirror_hosts: mysql.com

# Hostnames from which branches cannot be mirrored.
blacklisted_hostnames: localhost,127.0.0.1

# The codehosting access log location. Information such as connection, SSH
# login and session start times will be logged here.
access_log: /tmp/codehosting-access.log

# SSH connections that are idle for more than this many seconds are
# disconnected.
idle_timeout: 3600

# Products for which to expand lp:<product-name> to just HTTP urls.
# If we expect a lot of people to branch a particular product, we can
# save ourselves some load by directing them all to a HTTP url.
hot_products:

# Branch rewrite cache lifetime.
#
# How long, in seconds, to cache results of the branch path -> id
# mapping done by branch-rewrite.py for.
branch_rewrite_cache_lifetime: 10

# Update Preview diff ready timeout
#
# How long, in minutes, we wait for a branch to be ready in order to
# generate a diff for a merge proposal (in the UpdatePreviewDiffJob).
update_preview_diff_ready_timeout: 15

# Web status port
#
# An HTTP service that will have status 200 OK when the service is available
# for more connections, and 503 Service Unavailable when it is in the process
# of shutting down and so should not receive any more connections.
web_status_port = tcp:8022


[codeimport]
# Where the Bazaar imports are stored.
# datatype: string
bazaar_branch_store: sftp://hoover@escudero/srv/importd/www/

# The default value of the update interval of a code import from
# Subversion, in seconds.
# datatype: integer
default_interval_subversion: 21600

# The default value of the update interval of a code import from
# Git, in seconds.
# datatype: integer
default_interval_git: 21600

# The default value of the update interval of a code import from
# Mercurial, in seconds.
# datatype: integer
default_interval_hg: 21600

# The default value of the update interval of a code import from
# CVS, in seconds.
# datatype: integer
default_interval_cvs: 43200

# The default value of the update interval of a code import from
# Bazaar, in seconds.
# datatype: integer
default_interval_bzr: 21600

# Where the tarballs of foreign branches are uploaded for storage.
# datatype: string
foreign_tree_store: sftp://hoover@escudero/srv/importd/sources/

# After how many seconds to kill import workers that show no signs of
# activity.
worker_inactivity_timeout: 3600

# We will stop trying to import a branch if it fails this many times
# in a row.
consecutive_failure_limit: 5

# Import only this many revisions from git at once.
git_revisions_import_limit: 30000

# Import only this many revisions from svn (via bzr-svn) at once.
svn_revisions_import_limit: 5000

# Import only this many revisions from hg at once.
hg_revisions_import_limit: 5000

[codeimportdispatcher]
# The directory where the code import worker should be directed to
# store its logs.
worker_log_dir: /var/tmp/codeimport

# Force the dispatcher to look for the code import machine with this
# hostname, rather than the hostname of the machine it is running on,
# so we can use a machine name from the sample data on developer
# machines.
forced_hostname: none

# Where to find the code import scheduler service.
codeimportscheduler_url:
    http://xmlrpc-private.launchpad.dev:8087/codeimportscheduler

# The maximum number of jobs to run on a machine at one time.
max_jobs_per_machine: 3

# See [error_reports].
error_dir: /var/tmp/codehosting.test/

# See [error_reports].
oops_prefix: CID


[codeimportworker]
# This code is used by the code-import-worker-monitor which lives in
# scripts/code-import-worker-monitor.py and
# lib/lp/codehosting/codeimport/worker_monitor.py.

# The interval in seconds the worker should wait between updates to the
# heartbeat field of the CodeImportJob row representing a job.
heartbeat_update_interval: 30

# The amount of time which can elapse between updating a job's heartbeat
# field before the job is considered reclaimable.  This is somewhat
# arbitrarily chosen, but ten times the expected update interval should be
# enough of a margin to prevent false positives and short enough to not impact
# the throughput of the system when a job gets stuck for some reason.
maximum_heartbeat_interval: 300

# The code import worker stores its working files in a directory named
# worker-for-branch-${BRANCH_ID} in this directory.
working_directory_root: /var/tmp/codeimport/data

# See [error_reports].
error_dir: /var/tmp/codehosting.test/

# See [error_reports].
oops_prefix: CIW


[commercial]
# URL for salesforce proxy.
# datatype: string; a url
voucher_proxy_url:

# Port for salesforce proxy.
# datatype: integer
voucher_proxy_port:

# URL for purchasing a commercial subscription.
# datatype: string; a url
purchase_subscription_url:

# URL pointing to Ubuntu's licensing policy which Launchpad shares.
# datatype: string; a url
licensing_policy_url: https://help.launchpad.net/Legal/ProjectLicensing


[create_merge_proposals]
# The database user which will be used by this process.
# datatype: string
dbuser: create-merge-proposals
storm_cache: generational
storm_cache_size: 500

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none

[packaging_translations]
# The database user which will be used by this process.
# datatype: string
dbuser: rosettaadmin
source_interface:
    lp.translations.interfaces.translationpackagingjob.ITranslationPackagingJobSource

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


[cveupdater]
# The database user which will be used by this process.
# datatype: string
dbuser: cve

# datatype: string
cve_db_url: http://cve.mitre.org/cve/downloads/allitems.xml.gz


[database]
# datatype: boolean
randomise_select_results: false

# Connection strings, format as per the PQconnectdb connection string as
# documented at:
#     http://www.postgresql.org/docs/8.3/static/libpq-connect.html
# Note that user is not included, as it is specified by the dbuser
# option. This allows config sections to easily override just the dbuser.
# datatype: pgconnection
rw_main_master: dbname=launchpad_prod_3 host=wildcherry.canonical.com
# datatype: pgconnection
rw_main_slave:  dbname=launchpad_prod_2 host=chokecherry.canonical.com
# datatype: pgconnection
ro_main_master: dbname=launchpad_standalone_1 host=chokecherry.canonical.com
# datatype: pgconnection
ro_main_slave:  dbname=launchpad_standalone_1 host=chokecherry.canonical.com

# XXX stub 20100407 bug=557271: These next two are ignored, and should
# be removed after the May 2010 rollout.
# datatype: string
auth_master: ignored
# datatype: string
auth_slave: ignored

# If the replication lag is more than this many seconds, slave databases
# will not be used.
max_usable_lag: 120

isolation_level: serializable

# SQL statement timeout in milliseconds. If a statement
# takes longer than this to execute, then it will be aborted.
# A value of 0 turns off the timeout. If this value is not set,
# PostgreSQL's default setting is used.
# datatype: integer
db_statement_timeout: none

# The statement timeout will be updated after this many
# ms of statements being executed, decreasing the statement
# timeout while the request is being processed. We don't just
# update the statement timeout after every query to control
# the number of unnecessary db queries sent.
# datatype: integer
db_statement_timeout_precision: 5000

# A soft request timeout in milliseconds.  If a request
# takes longer than this timeout, an oops will be logged.
# If unset, requests will not cause soft timeouts.
# datatype: integer
soft_request_timeout: None

# The Storm cache type to use. May be 'default', 'generational' or 'stupid'
# datatype: string
storm_cache: generational

# The size of the Storm cache in objects. We start small, because this
# is the default used by everything and we have no idea if we are
# dealing with tiny objects or huge objects. Individual scripts can
# easily increase the cache size if database performance is an issue
# and RAM usage is not. See Bug #393625 for the issue that prompted
# this change.
# datatype: integer
storm_cache_size: 500

# Where database/replication/slon_ctl.py dumps its logs. Used for the
# staging replication environment.
# datatype: existing_directory
replication_logdir: database/replication


[diff]
# The maximum size in bytes to read from the librarian to make available in
# the web UI.  512k == 524288 bytes.
# datatype: integer
max_read_size: 524288

# The maximum number of lines to format using the format_diff tal formatter.
max_format_lines: 5000


[distributionmirrorprober]
# The database user which will be used by this process.
# datatype: string
dbuser: distributionmirror

# The time in seconds that the mirror prober will wait for
# a reply.
# datatype: integer
timeout: 30

# Should we set an http_proxy environment variable before
# running the prober?
# datatype: boolean
use_proxy: True

# If true, the mirror prober will only try to connect to
# localhost; all other hosts it'll return a success without
# even trying to connect.
# datatype: boolean
localhost_only: False

# The URL to the file containing the list of ISO images that a
# mirror must contain.
# datatype: string
cdimage_file_list_url: http://releases.ubuntu.com/.manifest


[distroseriesdifferencejob]
dbuser: distroseriesdifferencejob

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


[error_reports]
# A prefix for "OOPS" codes for this process instance.
# This is used to allow storing the reports from different
# Launchpad instances in the same directory structure.
# datatype: string
oops_prefix: none

# Directory to write error reports to.
# datatype: string
error_dir: none

# AMQP exchange to publish OOPSes to
error_exchange: oopses

# AMQP routing key to use
error_queue_key:


[expiredmembershipsflagger]
# The database user which will be used by this process.
# datatype: string
dbuser: teammembership
storm_cache: generational
storm_cache_size: 500


[generateppahtaccess]
dbuser: generateppahtaccess
storm_cache: generational
storm_cache_size: 500


[gina]
# The database user which will be used by this process.
# datatype: string
dbuser: gina
storm_cache: generational
storm_cache_size: 500

[gina_target.template]
# The distribution name (e.g. ubuntu) from where the packages
# will be taken and to where they will be imported into
# launchpad. A distribution with name DISTRO must be created
# on launchpad before been used because gina is not able to
# create distributions.
# datatype: string
distro: none

# The distroseries name (e.g. hoary) from where the packages
# will be taken and to where they will be imported (published)
# into launchpad. A distroseries with name DISTROSERIES inside
# the distribution DISTRO must be created on launchpad before
# been used because gina is not able to create distroseries.
# datatype: string
distroseries: none

# A comma separated list with the architectures that should
# be imported into Launchpad. DistroArchSeries entries for
# this architectures having the architecturetag equal to each
# element in ARCHS should be created previously for the given
# DISTROSERIES.
# datatype: string
architectures: i386,powerpc,amd64

# A comma separated list with the component names
# that should be imported into launchpad. As well as in
# distribution and distroseries the components must already
# exists inside launchpad. Currently the componentselection
# table is not checked but ideally it too should be populated.
# datatype: string
components: main,universe,restricted,multiverse

# A full path to where the keyrings files are
# available. These keyrings are used to look up who signed
# what wherever possible.
# datatype: string
keyrings: /usr/share/keyrings

# ROOT is the full path to a debian-style archive from where
# the packages and its info will be read. This directory
# should contain a pool and dists pair of trees.
# datatype: string
root: none

# The pocket where this import should go. A "pocket" is a
# sub-archive for a distribution series. The default pocket
# is called "release", others are "security", "updates" and
# "proposed". There may be more. Packages can be published in
# a specific pocket after the release is made, before that
# they will always be published in the "release" pocket.
# datatype: string
pocket: release

# The distroseries name to where packages should be published
# when working with pockets. Thats because on debian model
# hoary-updates can be seen as another distroseries but it
# does not happens on launchpad.
# datatype: string
pocketrelease: none

# If specified, override packages' components to this value.
# This only affects the publisher tables and may also override
# the archive according to the existing component/archive
# overriding rules.
# datatype: string
componentoverride: none

# The Katie database that should be used to extract extra
# information from.
# datatype: string
katie_dbname: none

# If true, only the source packages are imported and the
# binary packages ignored.
# datatype: boolean
source_only: false

# If true, only the source package names are imported into
# Launchpad
# datatype: boolean
sourcepackagenames_only: false


[gina_target.hoary.optional]
# This section is only used in tests. The test conf must set the key values.

[gina_target.breezy.optional]
# This section is only used in tests. The test conf must set the key values.

[gina_target.dapper.optional]
# This section is only used in tests. The test conf must set the key values.

[gina_target.dapper-updates.optional]
# This section is only used in tests. The test conf must set the key values.

[gina_target.bogus.optional]
# This section is only used in tests. The test conf must set the key values.

[gina_target.partner.optional]
# This section is only used in tests. The test conf must set the key values.

[gina_target.lenny.optional]
components: main,contrib,non-free
distro: debian
distroseries: lenny
pocketrelease: lenny

[gina_target.squeeze.optional]
components: main,contrib,non-free
distro: debian
distroseries: squeeze
pocketrelease: squeeze

[gina_target.wheezy.optional]
components: main,contrib,non-free
distro: debian
distroseries: wheezy
pocketrelease: wheezy

[gina_target.sid.optional]
components: main,contrib,non-free
distro: debian
distroseries: sid
pocketrelease: sid

[gina_target.experimental.optional]
components: main,contrib,non-free
distro: debian
distroseries: experimental
pocketrelease: experimental


[google_test_service]
# Run a web service stub that simulates the Google search service.

# Where are our canned XML responses stored?
canned_response_directory: lib/lp/services/googlesearch/tests/data/

# Which file maps service URLs to the XML that the server returns?
mapfile: lib/lp/services/googlesearch/tests/data/mapping.txt

# Where should the service log files live?
log: logs/google-stub.log

# Do we actually want to run the service?
launch: False


[google]
# client_id is the unique id Launchpad was issued by Google.
# datatype: string
client_id:

# site is the host and path that search requests are made to.
# eg. http://www.google.com/cse
# datatype: string, a url to a host
site: http://www.google.com/cse

# url_rewrite_exceptions is a list of launchpad.net domains that must
# not be rewritten.
# datatype: string of space separated domains
# Example: help.launchpad.net login.launchapd.net
url_rewrite_exceptions: help.launchpad.net

# maps_api_key is the API key we use for Google Maps. Values for the API
# keys are documented in lib/canonical/launchpad/google.txt
# The default value is the key for the launchpad.net domain, so we only
# need to override it when running in dev mode.
# datatype: string
maps_api_key:

[gpghandler]
# Host running PKS-like (SKS) keyserver Application.
# datatype: ip_address_or_hostname
host: keyserver.internal

# A public host running PKS-like (SKS) keyserver Application.
# This option is used to display links in the UI referring to
# the public keyserver.
# datatype: ip_address_or_hostname
public_host: keyserver.ubuntu.com

# Port number on Host to access the keyserver.
# datatype: int
port: 11371

[haproxy_status_view]
# Configuration for the +haproxy monitoring URL

# Result code to return when the app server is going down.
# datatype: int
going_down_status: 500

[initializedistroseries]
dbuser: initializedistroseries
source_interface:
    lp.soyuz.interfaces.distributionjob.IInitializeDistroSeriesJobSource

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


[karmacacheupdater]
# The database user which will be used by this process.
# datatype: string
dbuser: karma
storm_cache: generational
storm_cache_size: 500

# When calculating karma, if a categories scaling factor is
# larger than this it is reduced down to this maximum. This is
# to stop ridiculous spikes when a new category is added and
# there is little karma in the category's pool.
# datatype: integer
max_scaling: 500


[launchpad]
# The database user which will be used by this process.
# datatype: string
dbuser: launchpad_main
storm_cache: generational
storm_cache_size: 10000

# Whether or not to enable a test OpenID provider on the testopenid vhost.
# It's a test provider, not meant to be enabled on production.
# datatype: boolean
enable_test_openid_provider: False

# Assume the slave database is lagged if it takes more than this many
# milliseconds to calculate this information from the Slony-I tables.
# datatype: integer
lag_check_timeout: 250

# If False, do not launch the appserver.
# datatype: boolean
launch: True

# The vhost used as the OpenID provider to log into Launchpad.
# datatype: string
openid_provider_vhost: openid

# If true, the main template will be styled so that it is
# obvious to the end user that they are using a demo system
# and that any changes they make will be lost at some point.
# This should not be true for any systems talking to the
# production database.
# datatype: boolean
is_demo: False

# On launchpad.net, Launchpad's version and revision numbers aren't shown,
# because it's a Web site. Should be True for launchpad.net and False for all
# other systems.
# datatype: boolean
is_lpnet: False

# Proxy to be used when issuing HTTP requests.
#
# XXX: StuartBishop 2007-06-09: This should be in the canonical section,
# not the Launchpad section? At the moment, there are only scripts
# using this.
# datatype: string
http_proxy: http://squid.internal:3128/

# Session cookies being sent to a subdomain of the parent
# domains listed here will be sent to the parent domain,
# allowing sessions to be shared between vhosts.
# Domains should not start with a leading '.'.
cookie_domains:
    demo.launchpad.net, staging.launchpad.net, launchpad.net, launchpad.dev

# Maximum size of product release download files in bytes. A value
# of 0 means no limit.
# datatype: integer
# 200MiB
max_productrelease_file_size: 209715200

# Maximum size of a product release download file signature in bytes.
# A value of 0 means no limit.
# datatype: integer
max_productrelease_signature_size: 1024

# If this is provided, the message given in the string will appear
# in the site status bar at the top of every page.
# datatype: string
site_message:

# The default size used in a batched branch listing of results.
# Set the batching size for branch listings to be small, but
# different from the default size when testing so we can confirm
# that it is using the appropriate setting.
# datatype: integer
branchlisting_batch_size: 100

# The default size used in a batched display of team mugshots.
mugshot_batch_size: 32

# The default size used in a batched display of announcements.
announcement_batch_size: 5

# The default size used in a batched display of product download
# files.  The releases are batched, not the individual files.
download_batch_size: 10

# The default size of a list that summarizes and introduces a larger list.
summary_list_size: 10

# If restrict_to_team is set (such as on the beta
# website), then this indicates the hostname suffix for
# the non-restricted version of Launchpad.  Replacing
# config.launchpad.vhosts.mainsite.hostname with this
# value in a URI should give a valid host.
#
# This is intended to provide a way for non beta-testers
# to get back to the production instance if they are
# given a beta URL.
# datatype: string
non_restricted_hostname: launchpad.net

# Domain where incoming email related to specifications are sent to.
# datatype: string
specs_domain: specs.launchpad.net

# Number of seconds a blob stored in the temporary blob storage
# must remain before it may be garbage collected.
# datatype: integer
default_blob_expiry: 10800

# The default size used in a batched listing of results. See
# canonical.launchpad.webapp.batching for details. Use a
# small list for development because there is not a lot of
# sampledata.
# datatype: integer
default_batch_size: 50

# The maximum batch size that can be requested. A higher
# number will raise an InvalidBatchSizeError.
# datatype: integer
max_batch_size: 300

# Maximum size of attachments in bytes. A value of 0 means
# no limit.
# datatype: integer
max_attachment_size: 0

# Email address, to which all error reports are sent.
# Messages should have distinct Subject: or Keywords: headers
# so they can be filtered easily. Whenever code starts using this,
# we probably need to setup a new Mailman topic in the
# launchpad-error-reports mailing list or the error reports will
# be lost.
# datatype: string
errors_address: launchpad-error-reports@lists.canonical.com

# Email address for the Launchpad users mailing list.
# datatype: string
users_address: launchpad-users@lists.launchpad.net

# If this is provided, only members of the given team, and
# launchpad admins, may access the site.  Anonymous access is
# not allowed.  If this is provided, but not a known team name,
# only launchpad admins may access the site.
# datatype: string
restrict_to_team:

# The maximum number of minutes that Branch feeds should be cached for.
# datatype: integer
max_branch_feed_cache_minutes: 60

# The maximum number of minutes that Revision feeds should be cached for.
# datatype: integer
max_revision_feed_cache_minutes: 60

# Maximum size of blobs that can be stored in the temporary
# blob storage. Set to 0 for unlimited.
# datatype: integer
max_blob_size: 0

# datatype: integer
branch_dormant_days: 180

# The maximum number of minutes that feeds should be cached for.
# This is used to set the Expires and Cache-Control headers.
# datatype: integer
max_feed_cache_minutes: 60

# The maximum number of direct user-to-user emails allowed within a certain
# time period.
# datatype: int
user_to_user_max_messages: 3

# The time period for calculating the maximum number direct emails per user.
# datetime: canonical.lazr.config.as_timedelta
user_to_user_throttle_interval: 24h

# OOPS reports root for linking to OOPS reports.
# datatype: urlbase
oops_root_url: https://lp-oops.canonical.com/oops.py/?oopsid=

# Domain part of the bugs' email addresses. All email addresses in
# this domain should get redirected to the MailIntoLaunchpad handler.
# datatype: string
bugs_domain: bugs.launchpad.net

# Domain part of the code's email addresses. All email addresses in
# this domain should get redirected to the code mail handler.
# datatype: string
code_domain: code.launchpad.net

# The URL prefix for importd's bzr branches that it imports from
# other RCSes like CVS.  Used to generate URLs for the branch
# puller to use, not for public URLs.
# datatype: urlbase
bzr_imports_root_url: http://escudero.ubuntu.com:680/

# This key allows us to selectively disable the bug search feeds
# because of performance concerns.
# datatype: boolean
is_bug_search_feed_active: True

# The maximum number of minutes that Bug feeds should be cached for.
# datatype: integer
max_bug_feed_cache_minutes: 60

# datatype: integer
code_homepage_product_cloud_size: 120

# The referrers and the trust_roots they are allowed to pre-authorize.
# (e.g. http://referrer.example.com http://trustroot.example.com)
# datatype: string
openid_preauthorization_acl: None

# The database used by our GeoIP library.
geoip_database: /usr/share/GeoIP/GeoIPCity.dat

# The identity used to do remote geo to time zone lookups at
# ba-ws.geonames.net.
geonames_identity:

# The maximum number of lines that should be parsed by the launchpad
# log parser. The default value of None means there is no maximum.
logparser_max_parsed_lines: None

# The URL to the RSS feed that will be displayed on the front page
homepage_recent_posts_feed: http://blog.launchpad.net/tag/front-page/feed

# The number of items to display:
homepage_recent_posts_count: 6

# The URL to the CORS-friendly JSON feed of Launchpad status updates
# that is used on some error pages.
launchpadstatus_json_cors_feed: https://identi.ca/api/statuses/user_timeline/84819.json

# The URL to the Flash-friendly JSON feed of Launchpad status updates
# that is used on some error pages when the CORS feed does not work.
# Note that this has a slightly different structure than the identi.ca
# feed above: you must get the "results" from this data structure in
# order to get the same results as the identi.ca one.
launchpadstatus_json_flash_feed: https://search.twitter.com/search.json?q=from:launchpadstatus

# The URL of the XML-RPC endpoint that allows querying of feature
# flags. This should implement IFeatureFlagApplication.
#
# datatype: string
feature_flags_endpoint:

[launchpad_session]
# The database connection string.
# datatype: pgconnection
database: none

# The dbuser setting is added to the connection string, to allow configs
# to easily override this particular setting.
# datatype: string
dbuser: session

# The id of the cookie used to store the session token.
# datatype: string
cookie: launchpad

# These are unused as of July 2011. Remove when far flung config files
# have had a chance to remove these entries.
#
# datatype: string
dbhost: none
# datatype: string
dbname: session_prod


[librarianlogparser]
logs_root = /srv/launchpadlibrarian.net-logs


[librarian]
# The database user which will be used by this process.
# datatype: string
dbuser: librarian
storm_cache: generational
storm_cache_size: 500

isolation_level: read_committed

# Port number Librarian listens for storage requests on.
# datatype: int
upload_port: 9090

# Port number the Restricted Librarian listens for storage
# requests on.
# datatype: int
restricted_upload_port: 9095

# Port number Librarian listens for HTTP GET and
# HEAD requests on.
# datatype: int
download_port: 8000

# Port number Restricted Librarian listens for HTTP GET and
# HEAD requests on.
# datatype: int
restricted_download_port: 8005

# Host Librarian is listening on for storage requests.
# datatype: ip_address_or_hostname
upload_host: localhost

# Host Librarian is listening on for HTTP requests.
# datatype: ip_address_or_hostname
download_host: localhost

# Host the Restricted Librarian is listening on for storage
# requests.
# datatype: ip_address_or_hostname
restricted_upload_host: localhost

# Host the Restricted Librarian is listening on for HTTP requests.
# datatype: ip_address_or_hostname
restricted_download_host: localhost

# The base URL used to generate URLs to the Library contents.
# Note that this might be on a different host or port to what is
# specified above if access to the Library is via Apache redirects.
# datatype: urlbase
download_url: http://librarian.launchpad.net/

# The base URL used to generate URLs to the Restricted Library contents.
# datatype: urlbase
restricted_download_url: http://restricted-librarian.launchpad.net/

use_https = True

# See [error_reports].
# Must be unique per librarian instance.
oops_prefix: none
# Must be set per librarian instance.
error_dir: none


[librarian_gc]
# The database user which will be used by this process.
# datatype: string
dbuser: librariangc
storm_cache: generational
storm_cache_size: 500


[librarian_server]
# datatype: ip_address_or_hostname
upstream_host: none

# datatype: port_number
upstream_port: 80

# datatype: boolean
launch: False

# datatype: boolean
spew: False

# datatype: string
logfile: -

# The log file used by the restricted version of the Librarian.
# datatype: string
restricted_logfile: -

# datatype: string
root: none


# Mailman configuration.  This is only a shim to the real Mailman
# configuration system and is primarily used to specify settings that
# differ from the defaults, or are needed during the build.
[mailman]

# This string is used in the X-Launchpad-Hash header as salt in a hash that's
# added whenever a Launchpad-generated message will potentially get delivered
# to a Mailman mailing list. The header basically just tells Mailman that the
# message should be pre-approved.
# datatype: string
shared_secret: sutsGNcUEpc

# datatype: string
list_help_header: https://help.launchpad.net/ListHelp

# datatype: string
archive_address: archive@mail-archive.com

# Whether Mailman should be started (i.e mailmanctl start).
# datatype: boolean
launch: False

# datatype: integer
xmlrpc_runner_sleep: 10

# Socket timeout on XML-RPC connections made by Mailman.
# This should at least be higher than the LP request timeout.
# datatype: integer
xmlrpc_timeout: 10

# How often do we run the bounce processor?  For production, the default 15
# minutes is fine, for testing we want to run it more often.
# datatype: int
register_bounces_every: 900

# The hostname and port in the form of hostname:port.
# datatype: string
smtp: localhost:25

# Ceiling on the number of recipients that can be specified in a single SMTP
# transaction.  Set to 0 to submit the entire recipient list in one
# transaction.
# WARNING: Make sure that this matches the limits on the SMTP host!
# datatype: integer
smtp_max_rcpts: 50

# Ceiling on the number of SMTP sessions to perform on a single socket
# connection.
# WARNING: Make sure that this matches the limits on the SMTP host!
# datatype: integer
smtp_max_sesions_per_connection: 200

# The list owner header is a template URL that may contain
# $team_name in it.
# datatype: string
list_owner_header_template: https://launchpad.net/~$team_name

# datatype: string
xmlrpc_url: http://xmlrpc-private.launchpad.dev:8087/mailinglists

# datatype: string
archive_url_template: http://lists.launchpad.net/$team_name

# The list subscription header is a template URL that may contain
# $team_name in it.
# datatype: string
list_subscription_headers: https://launchpad.net/~$team_name

# The XMLRPC qrunner batch size when requesting mailing list information.  The
# qrunner will only ask for the info for these number of mailing lists at a
# time, though all will be requested during any one time through the loop.
# datatype: integer
subscription_batch_size: 25

# Hard and soft limits on the size of messages that will be accepted by
# Mailman.  Messages below the soft limit in size are not moderated.  Between
# the soft and hard limit, messages will be held for moderator approval.
# Above the hard limit, messages will be logged and discarded with no
# notification to the sender.  The Exim hard limit on incoming mail to
# lists.launchpad.net is 50MB so the Mailman hard limit should never be hit in
# practice.  These numbers are in bytes.
soft_max_size: 2000000
hard_max_size: 50000000

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none

# Whether Mailman should be built if it is not already.
# datatype: boolean
build: false

# Specify Mailman's configure's --prefix argument.
# If a value is given we assume it's a path and make it absolute.
# datatype: string
build_prefix:

# The 'VAR_DIR' location.  This is where Mailman will put and look
# for variable run time data, such as the list pickles and queue
# directories.
# datatype: string
build_var_dir: /var/mailman

# The user:group names that the Mailman process will run under.
# You may need to invoke buildmailman.py or "make run" as root via
# sudo to have the necessary permissions during the build or run
# phase.  Leave this commented to use the current user and group.
# datatype: string
build_user_group:

# Specify the site list's owner address and password
# If not set, a fake email address and random password
# will be used.
# datatype: string
build_site_list_owner:

# Set this if you want a host_name other than the current
# machine's `hostname -f`.  This is only used for the email domain
# part.
# datatype: string
build_host_name:


[malone]
# The From address for Malone email interface errors.
# datatype: string
bugmail_error_from_address: none

# The database user which will be used to send bug notifications.
# datatype: string
bugnotification_dbuser: bugnotification

# The batch size of bug lists.
# Use a small batch size to actually be able to verify batching
# works with our limited sampledata. Use a different one from
# the default batch size to be able to actually tell it's
# being used.
# datatype: integer
buglist_batch_size: 20

# The maximum number of characters a bug comment can be
# without being truncated when displayed on the main bug page.
# datatype: integer
max_comment_size: 3200

# The number of days of inactivity required before an unassigned
# bugtask with the status of INCOMPLETE_WITHOUT_RESPONSE is expired.
# datatype: integer
days_before_expiration: 60

# The number of minutes that at most should pass between
# changes to a bug to cause them to be grouped together into a
# single notification.
# datatype: integer
bugnotification_interval: 5

# Whether comments should be searched when searching bugs.
# datatype: boolean
search_comments: False

# The database user that will be used to expire bugtask.
# datatype: string
expiration_dbuser: bugnotification

# Where the sample debbugs db is located.
# datatype: string
debbugs_db_location: /srv/bugs-mirror.debian.org/

# When a bug has more than comments_list_max_length comments, we only
# show the first N and last M comments.  Be sure N+M < max length.
# datatype: integer
comments_list_max_length: 100
comments_list_truncate_oldest_to: 40
comments_list_truncate_newest_to: 40
# The default batch size for batched bug comment loading.
comments_list_default_batch_size: 1000

# Should +filebug be disabled for Ubuntu ?
ubuntu_disable_filebug: false

# Redirect to this URL when users try to file a bug on Ubuntu without
# using apport.
ubuntu_bug_filing_url: https://help.ubuntu.com/community/ReportingBugs


[memcache]
# Comma seperated list of (hostname:port,weight) for the memcache client
# to connect to.
# datatype: string
servers: (127.0.0.1:11217,1)


[memcached]
# If True, launch a local memcached instance.
# datatype: boolean
launch: false
# If true, the local memcached instance outputs client commands and responses.
# datatype: boolean
verbose: false
# Cache size in megabytes for local memcached instance.
# datatype: integer
memory_size: 1
# Address for local memcached instance to bind to.
# datatype: ip_address_or_hostname
address: 127.0.0.1
# Port for local instance to listen on.
# datatype: port_number
port: 11217


[merge_proposal_jobs]
# The database user which will be used by this process.
# datatype: string
dbuser: merge-proposal-jobs
storm_cache: generational
storm_cache_size: 500

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


##
## TODO: delete mpcreationjobs section after 10.04 rollout.
##
[mpcreationjobs]
# The database user which will be used by this process.
# datatype: string
dbuser: mp-creation-job
storm_cache: generational
storm_cache_size: 500

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


[person_notification]
# User for person notification db access
# datatype: string
dbuser: personnotification

# The number of days we should keep the notification records.
# datatype: integer
retained_days: 366


[personalpackagearchive]
# Directory to be created to store PPAs.
# datatype: string
root: /var/tmp/ppa

# Directory to be created to store private PPAs.
# datatype: string
private_root: /var/tmp/private-ppa

# External base URL for PPAs.
# datatype: string
base_url: http://ppa.launchpad.net

# External base URL for private PPAs.
# datatype: string
private_base_url: https://private-ppa.launchpad.net

# Directory where secret signing-keys will be stored.
# datatype: string
signing_keys_root: /var/tmp/ppa-signing-keys


[ppa.master]


[ppa_apache_log_parser]
logs_root: /srv/ppa.launchpad.net-logs
log_file_glob: *-access.log*


[poimport]
# The database user which will be used by this process.
# datatype: string
dbuser: poimport
storm_cache: generational
storm_cache_size: 500

# Statement timeout (in seconds), limited to super-fast-imports query.
# Set to 'timeout' to make it timeout every time (for tests).
statement_timeout: 300

# See [error_reports].
oops_prefix: none
# See [error_reports].
error_dir: none


[poppy]
# The URL of the XML-RPC endpoint that handles authentication of SSH
# users. This should implement IAuthServer.
#
# datatype: string
authentication_endpoint: none

# See [error_reports].
oops_prefix: none

# see [error_reports].
error_dir: none

# The absolute path to the private key used for the SFTP server.
# datatype: string
host_key_private: none

# The absolute path to the public key used for the SFTP server.
# datatype: string
host_key_public: none

# datatype: string
banner: none

# datatype: string
port: tcp:5022

# datatype: string
ftp_port: 2121

# The poppy access log location. Information such as connection, SSH
# login and session start times will be logged here.
access_log: /tmp/poppy-access.log

# SSH connections that are idle for more than this many seconds are
# disconnected.
idle_timeout: 3600

# Where on the filesystem do uploads live?
fsroot: none


[processmail]
# The database user which will be used by this process.
# datatype: string
dbuser: processmail
storm_cache: generational
storm_cache_size: 500
max_error_message_return_size: 65536

[process_apport_blobs]
# The database user which will be used by this process.
# datatype: string
dbuser: process-apport-blobs
oops_prefix: APPORTBLOB
error_dir: none


[productreleasefinder]
# The database user which will be used by this process.
# datatype: string
dbuser: productreleasefinder
storm_cache: generational
storm_cache_size: 500


[profiling]
# When set to True, the user is allowed to request profiles be run for
# either individual pages or for every request sent.
# datatype: boolean
profiling_allowed: False

# When set to True, each requests will be profiled and the resulting data
# saved in profile_dir.  `profiling_allowed` must also be True for this to
# work.
# datatype: boolean
profile_all_requests: False

# Directory to save profile info. The filename is in the format
# <timestamp>-<threadName>.prof
# datatype: filename
profile_dir: .

# If this option is set, that file will contain a log of the VSS and RSS
# at the start and end of each request.
# datatype: filename
memory_profile_log:

[rabbitmq]
# Should RabbitMQ be launched by default?
# datatype: boolean
launch: False
# The host:port at which RabbitMQ is listening.
# datatype: string
host: none
# datatype: string
userid: none
# datatype: string
password: none
# datatype: string
virtual_host: none

[txlongpoll]
# Should TxLongPoll be launched by default?
# datatype: boolean
launch: False
# The port at which TxLongPoll is listening.
# datatype: string
frontend_port: none
# The uri that should be a proxy to the TxLongPoll server.
uri: none

[reclaimbranchspace]
# The database user which will be used by this process.
# datatype: string
dbuser: reclaim-branch-space
storm_cache: generational
storm_cache_size: 500

# See [error_reports].
error_dir: none
# See [error_reports].
oops_prefix: none

[request_daily_builds]
dbuser: request-daily-builds
error_dir: none
oops_prefix: none


[revisionkarma]
# The database user which will be used by this process.
# datatype: string
dbuser: revisionkarma


[rosetta]
# The database user which will be used by this process.
# datatype: string
admin_dbuser: rosettaadmin

# From-address to send translation import/export notifications from.
# noreply@ and feedback@ are good candidates.
# datatype: string
notification_address: noreply@launchpad.net

# Fetching global suggestions is most time-consuming of all,
# and this provides an easy way to disable or enable them
# per Launchpad instance.
# datatype: boolean
global_suggestions_enabled: True

# A different batch size for POFile:+translate pages to keep them from
# timing out.
# datatype: integer
translate_pages_max_batch_size: 50

# Generate templates using the buildfarm?
# datatype: boolean
generate_templates: True

[rosetta_pofile_stats]
# In daily runs of pofile statistics update, check for
# POFiles that have been updated in the last how many days.
days_considered_recent = 7

# Number of seconds each LoopTuner iteration should take.
looptuner_iteration_duration = 4


[rosettabranches]
# The database user which will be used by the rosetta-branches cronscript.
# datatype: string
dbuser: translationsbranchscanner
storm_cache: generational
storm_cache_size: 500

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


[translations_export_to_branch]
# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


[sendbranchmail]
# The database user which will be used by this process.
# datatype: string
dbuser: send-branch-mail
storm_cache: generational
storm_cache_size: 500
oops_prefix: none
error_dir: none

[pofile_stats]
dbuser: pofilestats
storm_cache: generational
source_interface: lp.translations.interfaces.pofilestatsjob.IPOFileStatsJobSource

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


# For the personal standing updater cron script.
[standingupdater]
dbuser: standingupdater
# datatype: integer
approvals_needed: 3


[statistician]
# The database user which will be used by this process.
# datatype: string
dbuser: statistician
storm_cache: generational
storm_cache_size: 500

[supermirror]
# The longest period of time, in seconds, that the scheduler will
# wait for the worker to produce meaningful output.
# datatype: integer
worker_timeout: 1800

# The maximum number of puller worker processes we pull at once.
# datatype: integer
maximum_workers: 10

# How long in seconds to wait between asking for new branches to pull.
# datatype: integer
polling_interval: 10


[supermirror_puller]
# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


[supermirror_import_puller]
# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


[supermirror_mirror_puller]
# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


[supermirror_upload_puller]
# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


[targetnamecacheupdater]
# The database user which will be used by this process.
# datatype: string
dbuser: targetnamecacheupdater
storm_cache: generational
storm_cache_size: 500


[updateremoteproduct]
# The database user to run this process as.
# datatype: string
dbuser: updateremoteproduct
storm_cache: generational
storm_cache_size: 500


[updatesourceforgeremoteproduct]
# The database user to run this process as.
# datatype: string
dbuser: updatesourceforgeremoteproduct
storm_cache: generational
storm_cache_size: 500


[updatebugzillaremotecomponents]
# The database user to run this process as.
# datatype: string
dbuser: updatebugzillaremotecomponents
storm_cache: generational
storm_cache_size: 500


##
## TODO: delete update_preview_diffs section after 10.04 rollout.
##
[update_preview_diffs]
dbuser: update-preview-diffs

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


[upgrade_branches]
dbuser: upgrade-branches

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none


[uploader]
# The database user which will be used by this process.
# datatype: string
dbuser: uploader
storm_cache: generational
storm_cache_size: 500

# datatype: string
default_recipient_name: none

# datatype: string
default_sender_address: none

# datatype: string
default_recipient_address: none

# datatype: string
default_sender_name: none


[uploadqueue]
# The database user which will be used by this process.
# datatype: string
dbuser: queued
storm_cache: generational
storm_cache_size: 500


[vhosts]
# When true, use https URLs unless explicitly overridden.
# When false, use http URLs unless explicitly overridden.
# datatype: boolean
use_https: True

[vhost.template]
# Host name of this virtual host.
# This is matched from the incoming Host header, and
# also used to put together URLs if rooturl is not provided.
# Example: launchpad.net
# datatype: string
hostname: none

# Alternative host names to match, in addition to
# the one given in hostname, comma separated.
# Example: wwwww.launchpad.net, www.launchpad.net
# datatype: string
althostnames: none

# Explicit root URL for this virtual host.
# If this is not provided, the root URL is calculated
# based on the host name.
# Example: https://launchpad.net/
# datatype: string
rooturl: none

[vhost.mainsite]
# Can the profile page act as a OpenID delegated identity?
# data-type: boolean
openid_delegate_profile: False

[vhost.api]
enable_server_side_representation_cache: False
# By default, cache representations for 4 hours.
representation_cache_expiration_time: 14400

[vhost.blueprints]

[vhost.code]

[vhost.translations]

[vhost.bugs]

[vhost.answers]

[vhost.openid]

[vhost.testopenid]

[vhost.apidoc]

[vhost.ubuntu_openid]

[vhost.xmlrpc]

[vhost.xmlrpc_private.optional]

[vhost.feeds]


# Stubed Key server for test proposes, it's able to serve
# in SKS format, a restricted set of keys.
[testkeyserver]
# Directory to be created to store the pre-installed key-files
# datatype: string
root: /var/tmp/testkeyserver


# Immediate mail delivery configuration, for scripts that bypass Zope
# queued mail delivery. Will disappear once scripts are updated to use
# normal queued delivery.
[immediate_mail]
# datatype: port_number
smtp_port: 25

# datatype: ip_address_or_hostname
smtp_host: localhost

# datatype: boolean
send_email: true

[process-job-source-groups]
# This section is used by cronscripts/process-job-source-groups.py.
dbuser: process-job-source-groups
# Each job source class also needs its own config section to specify the
# dbuser, the crontab_group, and the module that the job source class
# can be loaded from.
job_sources:
    IMembershipNotificationJobSource,
    IPersonMergeJobSource,
    IPlainPackageCopyJobSource,
    IQuestionEmailJobSource

[IMembershipNotificationJobSource]
# This section is used by cronscripts/process-job-source.py.
module: lp.registry.interfaces.persontransferjob
dbuser: person-transfer-job
crontab_group: MAIN

[IPersonMergeJobSource]
# This section is used by cronscripts/process-job-source.py.
module: lp.registry.interfaces.persontransferjob
dbuser: person-merge-job
crontab_group: MAIN

[IPlainPackageCopyJobSource]
# This section is used by cronscripts/process-job-source.py.
module: lp.soyuz.interfaces.packagecopyjob
# XXX: GavinPanella 2011-04-20 bug=770297: The sync_packages database
# user should be renamed to copy_packages.
dbuser: sync_packages
crontab_group: FREQUENT

# See [error_reports].
error_dir: none

# See [error_reports].
oops_prefix: none

[IQuestionEmailJobSource]
# This section is used by cronscripts/process-job-source.py.
module: lp.answers.interfaces.questionjob
dbuser: answertracker
crontab_group: MAIN