[jira] Created: (SCM-119) Perforce provider should only append /... to view if necessary

2005-12-16 Thread Neil Padgen (JIRA)
Perforce provider should only append /... to view if necessary


 Key: SCM-119
 URL: http://jira.codehaus.org/browse/SCM-119
 Project: Maven SCM
Type: Bug

  Components: maven-scm-provider-perforce  
Reporter: Neil Padgen
 Attachments: patch

When creating a clientspec, maven-scm-provider-perforce currently appends 
/... to the SCM URL regardless of what is already there.  But other plugins 
(such as the changelog-report-plugin, file-activity-report-plugin and 
developer-activity-report-plugin) require the SCM URL to end in /... to be 
able to produce output.

Fix: when creating the clientspec, only append /... if it is not already 
there.

(I'm not sure if p4 filelog is invoked by this component or those other 
report plugins.)

*Untested* patch attached.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira



[jira] Commented: (SCM-119) Perforce provider should only append /... to view if necessary

2005-12-16 Thread Neil Padgen (JIRA)
[ http://jira.codehaus.org/browse/SCM-119?page=comments#action_53564 ] 

Neil Padgen commented on SCM-119:
-

I understand your point, Mike, but this issue will stop me from using Continuum 
until those plugins are changed.  Our processes depend on inspecting those 
existing reports.

I haven't tried the release plugin, but I assume that it will currently fail if 
the SCM URL is designed for those report plugins to work.

Existing projects will also break if suddenly the reports need a different URL 
to the one they have been using for months if not years.

Surely it would make sense to be lenient in what you accept and strict in what 
you produce, by not appending a /... to the depot path for p4 commands if 
there is already one in the depot path - while still persuading the report 
plugin's authors to change to using the SCM plugin.



 Perforce provider should only append /... to view if necessary
 

  Key: SCM-119
  URL: http://jira.codehaus.org/browse/SCM-119
  Project: Maven SCM
 Type: Bug

   Components: maven-scm-provider-perforce
 Reporter: Neil Padgen
  Attachments: patch


 When creating a clientspec, maven-scm-provider-perforce currently appends 
 /... to the SCM URL regardless of what is already there.  But other plugins 
 (such as the changelog-report-plugin, file-activity-report-plugin and 
 developer-activity-report-plugin) require the SCM URL to end in /... to be 
 able to produce output.
 Fix: when creating the clientspec, only append /... if it is not already 
 there.
 (I'm not sure if p4 filelog is invoked by this component or those other 
 report plugins.)
 *Untested* patch attached.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira



[jira] Commented: (SCM-114) Clientspec naming

2005-12-14 Thread Neil Padgen (JIRA)
[ http://jira.codehaus.org/browse/SCM-114?page=comments#action_53418 ] 

Neil Padgen commented on SCM-114:
-

We wouldn't be able to use the last directory in the SCM URL, as we use that 
last directory for branches; e.g. //depot/project1/MAIN and 
//depot/project1/RELEASE.  The RELEASE branch is derived from the MAIN branch, 
so each contains its own project.xml.  Using the last directory, we'd need lots 
of clients called MAIN-${hostname}-mavenscm - obviously that wouldn't work for 
us.

If you can identify that the scm plugin is being called from Continuum, you 
could maybe adopt Wim's suggestion and call it something like

continuum-${basename_of_working_directory}-${hostname}-${user}-${project}

which would produce something like continuum-16-buildhost-user-foobar for 
Mike's example, or continuum-16-buildhost-user-MAIN for us - which would be 
fine, as the number 16 would be unique per project within Continuum.



 Clientspec naming
 -

  Key: SCM-114
  URL: http://jira.codehaus.org/browse/SCM-114
  Project: Maven SCM
 Type: Improvement

   Components: maven-scm-provider-perforce
 Versions: 1.0-beta-3
 Reporter: mike perham
  Fix For: 1.0-beta-3



 Several people have expressed more than a passing interest in how the 
 Perforce clientspec is named by Maven SCM.  The name needs to be 
 autogenerated and unique for each Continuum project build.  Currently I am 
 thinking something like:
 ${project}-${user}-${hostname}-mavenscm
 Emmannuel, does the SCM subsystem have access to the name of the project 
 being built?  If not, I can just use the name of the last directory in the 
 SCM URL for the name of the project: //depot/projects/foobar would mean that 
 ${project} = foobar.
 And just head off the inevitable question: you cannot set P4CLIENT for this 
 because Continuum may build several different projects and they each need a 
 unique clientspec.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira



[jira] Commented: (SCM-113) Support persistent and transient clientspecs

2005-12-14 Thread Neil Padgen (JIRA)
[ http://jira.codehaus.org/browse/SCM-113?page=comments#action_53417 ] 

Neil Padgen commented on SCM-113:
-

I can see the advantages of both persistent and transient clientspecs.  I would 
expect the persistent clientspec to be used more often than the transient 
clientspec - Continuum will be building things every hour, while modules will 
be released probably not much more than once a day.

You should almost definitely use the Description field of a clientspec to 
describe the purpose of the client.

Name: client
Root: /path/to/root
Description:
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;Created by 
maven-scm-provider-perforce for maven-release-plugin
View:
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;//depot/project/... //client/... 


Then it's easy to do p4 clients |grep 
'maven-scm-provider-perforce.*maven-release-plugin'  to identify which ones 
ought to be deleted.

As for your hint, could you create a property 
maven.scm.perforce.transient-clientspec to true or false?



 Support persistent and transient clientspecs
 

  Key: SCM-113
  URL: http://jira.codehaus.org/browse/SCM-113
  Project: Maven SCM
 Type: New Feature

   Components: maven-scm-provider-perforce
 Versions: 1.0-beta-3
 Reporter: mike perham
  Fix For: 1.0-beta-3



 Continuum needs a persistent clientspec because it needs to update a 
 project's source code and build it once an hour.  On larger projects a 
 complete resync might take 10-20 minutes so it is necessary to keep a 
 clientspec around for that Continuum project build so syncs only take a few 
 seconds.
 However, the Maven Release plugin may need to be used by tens or even 
 hundreds of developers to release any number of small modules.  Currently 
 this would mean lots of clientspecs being created for the release checkout 
 which are reused very infrequently.  Here I would prefer to create the 
 clientspec, do the checkout, build and then delete the clientspec.  This is 
 what I term a transient clientspec.  
 The Perforce plugin would need to default to one mode and support some sort 
 of hint which tells it which mode to operate in.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira