[ http://jira.codehaus.org/browse/SCM-71?page=comments#action_79682 ] Stephen Connolly commented on SCM-71: -------------------------------------
The big road-block as I see it is how to integrate AccuRev's depot/stream/workspace model with maven's scm model. the scm ulr should be something like: scm:accurev:server:port/depot/stream/path_to_module AccuRev requires that all changes be implemented in a workspace. We can auto discover the workspace once we know what host we are on and the server/depot/stream details. We can force the user to create the workspace for themselves to prevent accumulation of temporary workspaces and the cluttering up of the stream namespace (all streams must have a unique name, and workspaces are also streams. you cannot delete streams, only hide them, so a temporary workspace will not do) The workspace is rooted at scm:accurev:server:port/depot/stream/ so if we have a module that is at scm:accurev:server:port/depot/main_stream/my_app/my_core/my_module the workspace will be rooted at, say c:\workspaces\main_stream_sconnolly\ the pom.xml will be in c:\workspaces\main_stream_sconnolly\my_app\my_core\my_module\ You cannot put a workspace inside another workspace, so when the release plugin tries to check-out a copy of the source tree we will have to move our workspace to the directory that the release plugin wants us to check-out into... release is going to want us to checkout into c:\workspaces\main_stream_sconnolly\my_app\my_core\my_module\target\temp so we move the workspace to there, and now we populate only the module we are using accurev pop -R my_app\my_core\my_module and now we have the clean checked-out pom.xml in c:\workspaces\main_stream_sconnolly\my_app\my_core\my_module\target\temp\my_app\my_core\my_module but the release plugin (afaik) is thinking that it's in c:\workspaces\main_stream_sconnolly\my_app\my_core\my_module\target\temp I am also unsure where/how to store the state info about the workspace while the release plugin is doing it's thing... i.e. in order to check-out the tagged module, you need to move the workspace stream into the snapshot stream... and when you are finished, you need to move it back to where it was before the release plugin runs... (both in terms of the local file system base for the workspace, and the accurev stream base for the workspace [the stream base will come from the scm url, but the problem lies in figuring out which workspace to move back and where it's base will be, i.e. should it be c:\workspaces\main_stream_sconnolly\my_app\my_core\ or c:\workspaces\main_stream_sconnolly\ if it is not c:\workspaces\main_stream_sconnolly\ then we will have problems]) --- This is a note for anybody trying to implement as regards my stumbling blocks. unless somebody can see an easy work-around I do not think accurev can be integrated with the release plugin. > Implement accurev provider > -------------------------- > > Key: SCM-71 > URL: http://jira.codehaus.org/browse/SCM-71 > Project: Maven SCM > Issue Type: New Feature > Reporter: Emmanuel Venisse > > I look at documentation, and it's very easy to do (works like cvs or svn) > http://www.accurev.com/download/docs/AccuRev_User_CLI.pdf -- 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
