P4DTI issue job000041

TitleConfiguration is too hard
Statusclosed
Prioritycritical
Assigned userGareth Rees
OrganizationRavenbrook
DescriptionConfiguring the P4DTI is much too hard, failing requirement 63 and requirement 75.
AnalysisWe require the user to set up both the DT and Perforce and a correspondence between them. Instead, we should by default generate the Perforce configuration from the DT configuration plus just a few high level configuration parameters.
Also, we should update the Windows registry ourselves, rather than asking the administrator to hack it with RegEdit.
Also, perhaps use e-mail addresses to map users between the systems. (Something similar is needed for Bugzilla anyway.)
P4WIN shows the first N fields (by what ordering?) in the job edit dialog. We should push non-editable P4DTI internal fields down to the bottom.
When you open a job in Perforce, it comes up with status "open" even though it's really in status "new". This is because "new" is special in Perforce.
The P4DTI- fields in the Perforce jobspec need to be at the bottom of the job so that they're out of the way. So number them with large numbers.
How foundmanual_test
Evidence<http://www.ravenbrook.com/project/p4dti/doc/2000-11-01/quokka-alpha-test/> item 15
<http://www.ravenbrook.com/project/p4dti/doc/2000-10-30/mahi-alpha-test/> items 2, 5, 12
<http://www.ravenbrook.com/project/p4dti/doc/2000-10-30/mahi-alpha-test/> item 3
<http://www.ravenbrook.com/project/p4dti/doc/2000-10-24/teamshare-psg-alpha-test/> item 2
<http://www.ravenbrook.com/project/p4dti/doc/2000-10-24/teamshare-psg-alpha-test/> item 27
<http://www.ravenbrook.com/project/p4dti/doc/2000-10-23/teamshare-psg-alpha-test/> items 8-14, 19
Observed in0.3.2
Created byRichard Brooksby
Created on2000-11-21 15:06:03
Last modified byGareth Rees
Last modified on2001-12-10 19:00:40
History2000-11-21 RB Created from sources (see evidence).
2000-11-22 RB Added evidence from Mahi alpha and suggestion about updating the registry ourselves.
2000-11-23 RB Added evidence from TeamShare PSG alpha testing.

Fixes

Change Effect Date User Description
5357 closed 2000-12-04 11:42:31 Gareth Rees Made the configuration parameters consistent between config_teamtrack module, configure_teamtrack module and section 5.2 of the Administrator's Guide:
Alphabetized all lists of parameters.
Added closed_state parameter to AG.
Added replicator_address parameter to config_teamtrack and configure_teamtrack.
Made sure to pass all parameters to configure_teamtrack.
5116 closed 2000-11-29 16:29:59 Gareth Rees Added history entry.
5101 open 2000-11-29 14:50:12 Gareth Rees Merged automatic configuration from branch/2000-11-28/auto-config into master sources.
5100 open 2000-11-29 14:40:57 Gareth Rees Changed resolver_address back to administrator_address, in anticipation of the removal of the role of the resolver.
5099 open 2000-11-29 14:40:31 Gareth Rees Documented configuration.
5069 open 2000-11-28 18:20:02 Gareth Rees Jobs don't belong to a subclass of defect_tracker_issue yet, so don't check that.
The replicator doesn't change the P4DTI fields unless you have to.
Fixed some minor bugs in dt_teamtrack.
Documented some of the requirements that user_translator is trying to meet, in a comment in dt_teamtrack.
The configuration engine makes sure that if you specified a closed_state then it was found.
The logger object was being called 'logger', which is the name of the module. So it's 'logger_object' now.
The config_teamtrack and replicator_test modules now use the configuration engine.
5056 open 2000-11-28 15:30:10 Richard Brooksby Branching system administrator's guide to branch "p4dti/branch/2000-11-27/auto-config" so that it can be updated to reflect the changes to the configuration procedure.
5053 open 2000-11-28 14:45:22 Gareth Rees Configuator now builds dt_teamtrack and replicator configuration dictionaries.
Implemented lowercasing of state names in TeamTrack and Perforce (see design decision [RB 2000-11-28a]).
Provided a configuration parameter for a distinguished TeamTrack state that maps to 'closed' (see design decision [RB 2000-11-28b]) to support requirement 45.
The make_state_pairs method removes duplicate state pairs and checks for TeamTrack states that map onto the same Perforce state.
Removed whitespace-stripping workaround for job000020. If people want to have leading and trailing whitespace in their state names, that's their problem.
5048 open 2000-11-28 12:25:34 Gareth Rees The configuration generator prevents people from having a field called "code" in their Perforce jobspec. This is because "p4 -G" uses the "code" field to indicate success or failure of the command. See job000003 for more details.
5047 open 2000-11-28 12:23:19 Gareth Rees Keyword translation functions now translate space in TeamTrack to underscore in Perforce, to make the translated names more readable. Functions moved to dt_teamtrack.py and used by single_select_translator.
Perforce field name is translated from TeamTrack's NAME field (not DBNAME), and keyword translation is applied.
5021 open 2000-11-27 20:58:56 Gareth Rees Changed the signature of the translator methods so that they take defect trackers and issues singly (not in tuples) and at translation time, not at creation time. This means that we can construct translators during configuration, before the defect trackers have been instantiated. There is some cost in the clarity of the methods and calls to them. A second consequence is that generally the supporting tables of data are not initialized until the translation is called.
In dt_teamtrack.py, all the init_* methods have been renamed read_*, for clarity (they may be called several times so they are not, strictly speaking, initializers).
TeamTrack configuration engine now produces a correctish jobspec.
5011 open 2000-11-27 17:48:38 Gareth Rees First cut at a automatic configuration engine for TeamTrack. Currently makes jobspec, but not yet suitable for "p4 -G jobspec -i".
4996 open 2000-11-27 14:03:36 Gareth Rees Created branch for developing automatic configuration for TeamTrack.