Subversion Repositories DevTools

Rev

Rev 1308 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1305 dpurdie 1
# -*-perl-*-
2
# Configuration file for codestriker.pl.
3
 
4
# Database to use for storing codestriker data.  Examples given are
5
# MySQL, Oracle, SQL Server, and PostgreSQL Refer to the
6
# documentation on how to create the Codestriker database.
7
 
8
# Example of a MySQL database URL residing on the same machine as the webserver.
9
#$db = 'DBI:mysql:dbname=codestrikerdb';
10
 
11
# Example of a MySQL database on host dbhost.  In this situation, you need to
12
# ensure that the webserver host has permission to connect to the database on
13
# dbhost.  Check the MySQL documentation for further details.
14
#$db = 'DBI:mysql:dbname=codestrikerdb;host=dbhost';
15
 
16
# Example of an oracle database URL.
17
#$db = 'DBI:Oracle:host=127.0.0.1;sid=local';
18
 
19
# Example of an SQL Server ODBC database URL.
20
$db = 'DBI:ODBC:CodestrikerCapetown';
21
 
22
# Example of a PostgreSQL database URL using the native Pg driver.
23
#$db = 'DBI:Pg:dbname=codestrikerdb';
24
 
25
# Example of a SQLite database URL.  Not fully supported yet.
26
#$db = 'DBI:SQLite:dbname=/var/www/codestrikerdb';
27
 
28
# Database user.
29
#$dbuser = 'system';
30
$dbuser = 'Codestriker';
31
 
32
# Database password.
33
#$dbpasswd = 'manager';
34
$dbpasswd = 'Codestriker';
35
 
36
# Location of the mailing host.  This is used when sending out codestriker
37
# comments.
38
$mailhost = 'auperadom10';
39
 
40
# Set the user and password parameters if $mailhost requires SMTP
41
# authentication.  If commented out, it is assumed authentication is 
42
# not required.
43
#$mailuser = 'smtpuser';
44
#$mailpasswd = 'smtppasswd';
45
 
46
# Indicate whether to try and compress output if the client browser
47
# supports it.  This can make a tremendous difference in bandwidth,
48
# especially over slow links.
49
$use_compression = 0;
50
 
51
# Location of gzip.  Gzip is used only if you don't have Compress::Zlib
52
# installed.  Note, if running with mod_perl, you _must_ have Compress:Zlib
53
# installed.  If gzip is not available, this can be set to "".
54
$gzip = '/bin/gzip';
55
 
56
# Location of the cvs binary.
57
#$cvs = 'c:/Program Files/GNU/WinCvs 1.3/CVSNT/cvs.exe';
58
$cvs = '/usr/bin/cvs';
59
 
60
# Location of the svn binary.
61
#$svn = 'c:/Program Files/SVN/svn.exe';
1311 dpurdie 62
#$svn = '/usr/bin/svn';
63
$svn = 'C:/Program Files/TortoiseSVN/bin/svn';
1305 dpurdie 64
 
65
# Location of the ssh binary.  This is only required if a CVS :ext
66
# type repository is used.
67
$ssh = '/usr/local/bin/ssh';
68
 
69
# Location of the p4 (Perforce client) binary.  This does not need to be set
70
# if you are bot using any Perforce repositories.
71
$p4 = '/usr/local/bin/p4';
72
 
73
# Location of the vss binary.  This can be ignored for deployments which don't
74
# use VSS (Visual Source Safe).
75
$vss = 'C:/Program Files/Microsoft Visual Studio/VSS/win32/ss.exe';
76
 
77
# Temporary directory Codestriker can use.  For *NIX platforms, this will
78
# /tmp by default, for Windows 2000 c:\winnt\temp and for XP, c:\windows\temp.
79
# For Win32 deployments, these temp directories may not be accessible to
80
# the user running IIS or Apache, so explicitly specify an apprioriate
81
# directory here that exists on the system.  For *NIX platforms, there is
82
# usually no need to do anything here.
83
#$tmpdir = '/tmp/codestriker';
84
$tmpdir = 'f:/temp';
85
 
86
# If codestriker is installed differently to that described in the README file
87
# (for example on the sourceforge servers), it may be necessary to explicitly
88
# specify the location of the codestriker_css as a URL.
89
$codestriker_css = '';
90
 
91
# Valid repositories which may be selected at the create topic screen.
92
# The order shown here is the order presented in the option list.  Most
93
# deployments will only require a single repository to be specified.
94
# Comment out / modify entries appropriate for your deployment.
95
#
96
# If this list is empty it won't be possible to view the entire contents of a
97
# file before the proposed change and/or after. All of the places 
98
# in the application that ask for, or display repository information will
99
# be hidden and lastly, it will be impossible to make a diff review topic
100
# on files that already checked in.
101
#
102
# You also need to make sure that the user running your webserver has
103
# permission to run the client SCM program (eg, cvs, p4, svn), and to
104
# connect to the repository.
105
@valid_repositories =
106
    (
107
     # Example CVSROOT of a CVS repository on the same machine as the
108
     # codestriker server.
109
     #'/home/sits/cvs',
110
 
111
     # Example of a CVS repository which contains the URL to a viewcvs
112
     # installation (CVS web is also supported), followed by the
113
     # CVSROOT of the repository.
114
     #'http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi /cvsroot',
115
 
116
     # The next example is the syntax used for specifying a Subversion
117
     # repository, which is simply the subversion repository URL
118
     # prefixed # by svn:
119
     #'svn:http://svn.collab.net/repos/svn/trunk',
120
 
121
     # Subversion server with authentication.  The user name and
122
     # password should be added to the end and separated by
123
     # semicolons.
124
     #'svn:http://svn.collab.net/repos/svn/trunk;username;password',
125
 
126
     # Subversion server that uses the Subversion protocol.
127
     #'svn://my.subversion.server/repos/product/trunk',
128
 
129
     # Example CVS pserver config with username and password
130
     # specified.
131
     #':pserver:sits:password@cvs.sourceforge.net:/cvsroot',
132
 
133
     # Example CVS pserver config with proxy options.
134
     #':pserver;proxy=abc.com;proxyport=8080:sits:pwd@cvs.dev.net',
135
 
136
     # Example CVS pserver with empty password.
137
     #':pserver:anonymous:@cvs.sourceforge.net:/cvsroot',
138
 
139
     # Example CVS server which will be connected to with SSH.  This
140
     # assumes the appropriate ssh keys have been created so that the
141
     # process running the Codestriker application can connect to the
142
     # CVS server without requiring a password to be entered.
143
     #':ext:sits@localhost:/home/sits/cvs',
144
 
145
     # Visual SourceSafe repository on same machine at default
146
     # location.  Username "admin", password "password".
147
     #'vss:admin;password',
148
 
149
     # Visual SourceSafe repository on same machine, but with specific
150
     # repository location specified.
151
     #'vss:c:\\Program Files\\Microsoft Visual Studio\\VSS;admin;password',
152
 
153
     # Visual SourceSafe repository located on a network fileshare.
154
     #'vss:\\\\VisualSourceSafeMachineName\\SharedRepositoryPath;admin;password',
155
     # Example Win32 CVS repository on the same machine.
156
     #':local:c:\\cvsrep',
157
 
158
     # Another Win32 CVS repository on the same machine.
159
     #'c:/cvsrep2',
160
 
161
     # The next example is for a Perforce repository.  After the
162
     # leading :perforce identifier, the next two components are the
163
     # Perforce user and password parameters.  The last two parameters
164
     # after the '@' symbol represent the host and port number of
165
     # the Perforce server.
166
     #'perforce:sits:password@localhost:1666',
167
 
168
     # Same as previous example, but with no password specified.
169
     #'perforce:sits@localhost:1666',
170
 
171
     # The next example is a ClearCase repository, where the path is
172
     # the location of a shared snapshot view.  From this view, it
173
     # should be  possible to a file of any version can be 
174
     # retrieved from the vob using the "cleartool get" command.  It
175
     # is important that this snapshot view is accessible with the
176
     # same path specification for all developers.  This is because
177
     # a diff file created by a developer will refer to the snapshot
178
     # view, and will allow Codestriker to retrieve specific files
179
     # and versions mentioned in the review text, when necessary.
180
     # It is also important that the user account running the
181
     # webserver process has permission to access to the snapshot
182
     # view.
183
     #'clearcase:c:\\stuff\\view_name\\vob_name'
184
 
185
     # The next example is a repository based off a ClearCase dynamic view.
186
     # The clearcase identifier is followed by the dyn indicator,
187
     # followed by the view name, followed by the location where the
188
     # view is loaded.
189
     # 'clearcase:dyn:viewname:/vobs' 
1311 dpurdie 190
     'clearcase:dyn:auperaweb08_techgp_latest_codestriker_view:O:\\auperaweb08_techgp_latest_codestriker_view',
191
 
192
     #
193
     # Vix specific syntax
194
     # Embdedded RepoTag as used in RM and elsewhere in []
195
     # If present, then Module name are allowed to start with it.
196
     #
197
     'svn:https://auperasvn01.aupera.erggroup.com/svn[AUPERASVN01]',
1305 dpurdie 198
    );
199
 
200
# A mapping of repository URLs to names.  In any screen where a
201
# repository is displayed, if there is a mapping for the repository
202
# defined here, then the symbolic name will be displayed instead of
203
# its raw URL.  This is useful when the URL contains sensitive
204
# username/password information, or the symbolic name is more
205
# meaningful to the end-user.  If there is no mapping defined for a
206
# specific repository, its URL will be displayed.
207
$repository_name_map =
208
{
1311 dpurdie 209
'clearcase:dyn:auperaweb08_techgp_latest_codestriker_view:O:\\auperaweb08_techgp_latest_codestriker_view' => 'VIX Perth ClearCase Repositories',
210
'svn:https://auperasvn01.aupera.erggroup.com/svn[AUPERASVN01]' => 'VIX Perth Subversion Repositories',
1305 dpurdie 211
};
212
 
213
# A mapping of repositories to filename viewers.  Examples of such systems
214
# would be CVSweb and ViewCVS, for local repositories.  Mappings are
215
# not required for remote CVSweb and ViewCVS repositories, as they are
216
# viewers themselves.  When viewing reviews, links from filenames will be
217
# mapped to these URLs, to obtain revision log information for that file.
218
$file_viewer =
219
{
220
    '/home/sits/cvs' => 'http://localhost/cgi-bin/cvsweb.cgi'
221
};
222
 
223
# Exclude these file types from review topics.   
224
# You will generally want to exclude any non-human-readable files.
225
@exclude_file_types = ('rtf', 'doc', 'gif', 'bmp', 'jpeg', 'jpg', 'mdb',
226
		       'ppt', 'vsd', 'xls', 'zip', 'tgz', 'tar', 'gz',
227
		       'opt', 'aps', 'ncb', 'a', 'so', 'dll', 'lib',
228
		       'exe', 'png', 'pdf', 'bin', 'out', 'ld', 'fm',
229
		       'indd', 'wav', 'o', 'obj', 'mpp', 'vsw', 'jfif',
230
		       'tif', 'tiff', 'xbm', 'fnt', 'ttf', 'pfm', 'pfb',
231
		       'eps', 'wpj', 'sxi');
232
 
233
# The number of problems found per line drops if the size of the 
234
# topic is too large. A common inspection pitfall is for authors to 
235
# attempt to review too much material and then miss problems. 
236
# These two options allow the Codestriker administrator to limit 
237
# the length of the topics. Topics that have more lines than 
238
# $maximum_topic_size_lines are rejected when they are created. 
239
# Topics that are larger than $suggested_topic_size_lines generate 
240
# a warning displayed in the topic page, but are accepted into the 
241
# system. Codestriker measures that length of the topic by counting 
242
# the number of lines in the topic text.
243
#
244
# The codestriker default of not enforcing any limits is specified by
245
# settings either option to an empty string. If you are not sure 
246
# what a reasonable limit would be, start with a suggested_topic_size_lines
247
# set to 350, and adjust with experience.
248
$maximum_topic_size_lines = '';
249
$suggested_topic_size_lines = '';
250
 
251
# The default viewing mode to use in the URL when creating a topic.  Can
252
# be either ($NORMAL_MODE, $COLOURED_MODE or $COLOURED_MONO_MODE).  These
253
# values should not be changed.
254
$NORMAL_MODE = 0;
255
$COLOURED_MODE = 1;
256
$COLOURED_MONO_MODE = 2;
257
 
258
$default_topic_create_mode = $COLOURED_MODE;
259
 
260
# The default line break viewing mode to use in the URL when viewing a
261
# topic.  Can be either $LINE_BREAK_NORMAL_MODE or $LINE_BREAK_ASSIST_MODE.
262
# Using $LINE_BREAK_ASSIST_MODE indicates that extra line breaks may be
263
# used in the topic display if the review has very long code lines.  Using
264
# $LINE_BREAK_NORMAL_MODE will ensure that the display matches the line
265
# breaks present in the code.  The line break mode can also be changed
266
# dynamically in the view topic screen.  There is usually no need to
267
# change this setting unless you regularly review code with very long
268
# lines.
269
$LINE_BREAK_NORMAL_MODE = 1;
270
$LINE_BREAK_ASSIST_MODE = 2;
271
 
272
$default_topic_br_mode = $LINE_BREAK_ASSIST_MODE;
273
 
274
# When displaying a topic, if this value is -1, then all files in the
275
# topic are displayed in the one page (default old Codestriker
276
# behaviour).  If the value is 0, then only the first file is shown,
277
# with links to display the other files.  This is useful for those
278
# deployments that review a large amount of code.
279
$default_file_to_view = 0;
280
 
281
# List of valid topic states.  Note these values are mapped to the database
282
# depending on their position in the list.  ie, Open -> 0, Closed -> 1, etc.
283
# There is no problem added new states dynamically, or changing the textual
284
# names.  Note, the initial topic state must be the first element.  If
285
# the 'Obsoleted' state is removed, then it will not be possible to obsolete
286
# topics.  If the 'Deleted' state is removed, then it will not be possible
287
# to delete topics.
288
@topic_states = ('Open', 'Closed', 'Reviewed', 'Actioned', 'Obsoleted', 'Deleted');
289
 
290
# Which states (in topic_states, above) will be displayed on the default
291
# project page
292
@default_topic_states = ('Open', 'Reviewed', 'Actioned');
293
 
294
# Which states (in topic_states, above) represent a 'readonly' state.
295
# If a topic is in a readonly state, then certain activities are disabled, such
296
# as adding new comments, editing the metrics of existing comments, etc.
297
@readonly_states = ('Closed', 'Obsoleted', 'Deleted');
298
 
299
# Indicate if topics can be listed/searched.  Turning this to false can be
300
# useful for "anonymous" installations of codestriker.
301
$allow_searchlist = 1;
302
 
303
# The following controls project configuration.  Each Codestriker topic is
304
# a member of a specific project.  Uncomment the option you want
305
# below.  Note the textual state names below cannot be changed.
306
 
307
# Default option, projects are enabled, but they have no state
308
# changing operations (ie, projects are always in state 'Open').
309
@project_states = ('Open');
310
 
311
# Don't use projects at all.  Effectively, an implicit "default
312
# project" is created and associated with all topics behind the scenes.
313
# @project_states = ();
314
#
315
# Allow for projects to be closed.  Closing a project will
316
# not allow new topics to be created in that project.
317
# @project_states = ('Open', 'Closed');
318
#
319
# Allow for projects to be deleted.  This is potentially a dangerous
320
# option to allow, as deleting a project will delete all of its member
321
# topics as well.  Use with caution.
322
# @project_states = ('Open', 'Deleted');
323
#
324
# Allow for projects to be closed and deleted.  Use with caution.
325
# @project_states = ('Open', 'Closed', 'Deleted');
326
 
327
# If true, don't display any email addresses in their true form, but
328
# truncate them, to beat SPAM harvesters.
329
$antispam_email = 0;
330
 
331
 
332
# If comments_sent_to_topic_author is true, codestriker will send 
333
# out email to the topic owner and when a comment is added. If this 
334
# option is false, no email will be sent the topic owner. 
335
#
336
# If comments_sent_to_commenter is set to true, codestriker will
337
# blind cc (bcc) the comment author on all comments. The preceding
338
# comments_sent_to_topic_author must be true in order for the blind
339
# cc of emails to be enabled.
340
#
341
# If topic_state_change_sent_to_reviewers is set to true, codestriker
342
# will send email to the reviewer list when a topic state is changed.
343
#
344
# Emails about each comment may not be needed if a meeting
345
# is planned to discuss the topic. If the comment submitter specifies
346
# a cc user, an email is always sent out, regardless of any email
347
# settings.
348
$email_send_options = 
349
    {
350
    comments_sent_to_topic_author => 1,
351
    comments_sent_to_commenter => 0,
1311 dpurdie 352
    topic_state_change_sent_to_reviewers => 1,
353
    default_from_domain => 'vixtechnology.com', 
1305 dpurdie 354
    };
355
 
356
# Default width of tabs.  Most developers expect this to be 8, but
357
# some expect to see 4.  This is also stored in the user's cookie, and
358
# can be changed dynamically on the view topic screen.
359
$default_tabwidth = 4;
360
 
361
# Bug database to update.  Currently, Bugzilla and Flyspray are
362
# supported, but it is straight-forward to support other bug
363
# databases.  To enable Bugzilla, set $bug_db to "bugzilla", and set
364
# the following parameters to your setup.  To enable Flysprat, set
365
# $bug_db to "flyspray", and set the relevant parameters.
366
# if the $bug_db is an empty string, all bug-tracking related
367
# features will be disabled.
368
 
369
$bug_db = '';
370
#$bug_db = 'bugzilla';
371
#$bug_db = 'flyspray';
372
 
373
# Bugzilla database connection details.
374
#$bug_db_host = 'localhost';
375
#$bug_db_name = 'bugs';
376
#$bug_db_password = 'bugs_password';
377
#$bug_db_dbname = 'bugs';
378
#$bug_db_user_id = '2';
379
 
380
# Flyspray database connection details
381
#$flyspray_db_host = 'localhost';
382
#$flyspray_db_name = 'flyspray';
383
#$flyspray_db_password = 'flyspray_password';
384
#$flyspray_db_dbname = 'flyspray_dev';
385
#$flyspray_db_user_id = 50;
386
 
387
# The URL to the bug tracking system.  The bug number is appended to the
388
# end of this string when URLs are generated.  This can be left blank if
389
# there is no need for bug-tracking integration.  Below are some example
390
# URLs for Bugzilla and Flyspray.
391
$bugtracker = '';
392
#$bugtracker = 'http://localhost.localdomain/bugzilla/show_bug.cgi?id=';
393
#$bugtracker = '/flyspray_dev/?do=details&id=';
394
 
395
# LXR database.  Each repository can be optionally mapped to a
396
# different LXR deployment.  If a repository has an associated LXR
397
# mapping, then create a new entry where the repository string is the
398
# key, and the value is another map, where "db" is the LXR database
399
# URL, "user" is the database user, "password" is the data password,
400
# and "url" is the base LXR URL for viewing where an identifier is
401
# defined/used.
402
$lxr_map = 
403
{
404
#    '/home/sits/cvs' => { db => 'DBI:Pg:dbname=lxr',
405
#			  user => 'lxr',
406
#			  password => '',
407
#			  url => 'http://localhost.localdomain/lxr/ident?i='
408
#			},
409
#
410
#     'svn:http://svn.collab.net/repos/svn/trunk' =>
411
#                        { db => 'DBI:Pg:dbname=lxr2',
412
#			  user => 'lxr',
413
#			  password => '',
414
#			  url => 'http://localhost.localdomain/lxr2/ident?i='
415
#			}
416
};
417
 
418
# Character encoding to use when reading topic text.  Default is utf8
419
# (compatible with ASCII) if not set, but this can be over-ridden here.
420
# List of example encoding names can be retrieved from the following
421
# URL: http://perldoc.perl.org/Encode/Supported.html.
422
#$topic_text_encoding = 'utf8';
423
#$topic_text_encoding = 'gb2312';
424
 
425
# Each comment thread (or issue) that is created against a specific
426
# code line in Codestriker can have a configurable number of
427
# user-defined metrics recorded against it.
428
#
429
# Every site has their own requirements, below are a number of example
430
# configurations.  The "name" attribute refers to the name of the
431
# metric being recorded.  The "values" attribute is a list of values
432
# that this metric can be assigned to.  The "default_value" attribute
433
# is optional, and indicates what the default value of the metric is
434
# assigned to.  If this attribute is not specified, then the user will
435
# be required to specify a value for a metric when creating a new
436
# comment thread.  This is recommended, so that users think about what
437
# these values should be, rather than blindly accepting default
438
# values.  For the "Status" metric below however, it is recording the
439
# "state" of the thread, so an initial state of "Submitted" is reasonable.
440
# For the other metrics below, an initial value makes no sense.
441
# Metric items can have an optional show_on_main_page list that will
442
# force the numbers of comments with the metric settings to be reported
443
# on the main page of codestriker. 
444
#$comment_state_metrics =
445
#    [ 
446
#      { name             => 'Status', 
447
#	values           => ['Submitted', 'Invalid', 'Completed'],
448
#	default_value    => 'Submitted',
449
#	show_on_mainpage => ['Submitted' ] 
450
#      }
451
#    ];
452
 
453
# Two metrics defined: Status and Type.
454
#$comment_state_metrics =
455
#    [
456
#      { name=>'Status', values=>['Submitted', 'Invalid', 'Completed'],
457
#	                default_value=>'Submitted' },
458
#      { name=>'Type', values=>['Style', 'Minor', 'Major', 'Severe'] }
459
#    ];
460
 
461
# Four metrics defined: Status, Level, Mode and Type.
462
$comment_state_metrics =
463
    [
464
      { name=>'Status', values=>['Submitted', 'Completed', 'Verified'],
465
	                default_value=>'Submitted', show_on_mainpage=>['Submitted'] },
466
      { name=>'Level', values=>['Minor', 'Major', 'Investigate', 'Rejected'] },
467
#      { name=>'Mode', values=>['Missing', 'Wrong', 'Unclear', 'Suggestion'] },
468
#      { name=>'Type', values=>['Logic', 'Data Handling', 'Interface',
469
#			       'Error Handling', 'Performance', 'Comments',
470
#			       'Standards'] },
471
      { name=>'Target', values=>['Code', 'Requirement','Design', 'Build', 'Document/UserGuide'] }
472
    ];
473
#
474
# Case where no comment thread metrics are to be used.
475
#$comment_state_metrics = [];
476
 
477
 
478
# Allows you to override the default title of "Codestriker %version%".
479
$title = "Capetown Codestriker $Codestriker::VERSION";
480
 
481
# This options configures the metric support in codestriker. You have
482
# the following options:
483
#
484
# $metric_config = "none", "basic", "all", "metric name, metric name, etc"
485
#
486
# "none" - turns off all extra metric support in the application. The
487
# metric page will only display and manage data that is strictly
488
# required to perform the review.  Codestriker will not require any
489
# addition data input from the reviewers and authors.  This is the
490
# default. However, you still get basic data like how many topics are
491
# being created and how problems are being found.
492
#
493
# "basic" - Turns on the metrics that are considered to be essential
494
# for a metric program. It will require that reviewers and authors
495
# enter the time spent reviewing the topic, the time spent in the
496
# review meeting, and the time spent preparing for the review. The
497
# metric selection assumes that you are following a formal review
498
# process with a preparation meeting, and a defect review meeting.
499
#   
500
#   kickoff time - time spent preparing for the review
501
#   checking time - time spent actually reviewing the topic.
502
#   logging meeting duration - the time spent in the logging meeting.
503
#
504
# "all" - Turns on all of the metrics that one could possibly want to
505
# track. The list of metrics is from the book "Software Inspection" by
506
# Gilb and Graham.  You should probably not use this unless you are
507
# using a formal process that is well established. You may want to
508
# enable this temporally to get a idea of the types of metrics that
509
# are supported.
510
#
511
# "name,name" - Lastly, you can pick and chose what metrics you would
512
# like to enable.  just list the metric names in a comma separated
513
# list. You can see all of the build in metrics in the
514
# lib/Codestriker.pm file. For example, if you don't hold a kick off
515
# meeting, and but do hold a logging meeting, the basic option will not
516
# quit fit. You should set the $metric_config as:
517
# $metric_config = "checking time,logging meeting duration".
518
#
519
# If you don't like our choices of metrics, the names, descriptions,
520
# etc feel free to edit the lib/Codestriker.pm. It contains
521
# documentations on how to add your own metrics into codestriker. It
522
# is easy to do, and does not require any coding.
523
 
524
$metric_config = "basic";
525
 
526