[ https://issues.apache.org/jira/browse/SCM-288?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17964448#comment-17964448 ]
Olivier Lamy commented on SCM-288: ---------------------------------- This project has moved from Jira to GitHub Issues. This issue was migrated to [apache/maven-scm#506|https://github.com/apache/maven-scm/issues/506]. > Improved support for SCM providers like ClearCase that do NOT check out > directly into the check-out-dir but into sub-directories of the check-out-dir > ----------------------------------------------------------------------------------------------------------------------------------------------------- > > Key: SCM-288 > URL: https://issues.apache.org/jira/browse/SCM-288 > Project: Maven SCM (Moved to GitHub Issues) > Issue Type: Improvement > Components: maven-plugin, maven-scm-api, maven-scm-provider-clearcase > Affects Versions: 1.0-rc1 > Reporter: Arne Degenring > Assignee: Emmanuel Venisse > Priority: Major > Fix For: 1.0-rc1 > > Attachments: patch-maven-scm-2.txt, patch-maven-scm.txt > > > As discussed on > http://www.nabble.com/Towards-full-ClearCase-integration-tf3433039.html > PROBLEM: > The ClearCase implementation of the checkout command for ClearCase creates a > ClearCase snapshot view. Such a snaphsot view is very similiar to a CVS or > Subversion checkout directory, but one major difference is the directory > structure. To make it clear, consider the following example: > Consider you have checked out the project MY_VOB/my/project to > d:\continuum-work\167: > - When working with CVS or SVN, you would find the POM file at > d:\continuum-work\167\pom.xml. > - With ClearCase, the location would be > d:\continuum-work\167\MY_VOB\my\project\pom.xml. This means that the > directory structure within the configuration management system, is repeated > in every view (checkout directory). AFAIK it is not possible to change this > ClearCase behaviour. > This leads to the following problems: > - After adding a project to Continuum, the build cannot be performed because > the POM file cannot be found. The build definition has to be changed > manually, so that the POM file location is e.g. "MY_VOB/my/project/pom.xml" > instead of "pom.xml". > - The maven-release-manager performs a clean checkout from a tag to the > target/checkout directory, and then runs the build in that checkout > directory. Same problem here, it would have to be run in e.g. > "target/checkout/MY_VOB/my/project" instead of just "target/checkout". > SOLUTION: > The solution is to add an attribute to CheckOutScmResult that contains the > path of the project directory relative to the checkout directory. By default, > and for most SCM providers, it is just "". But the ClearCaseCheckOutCommand > sets e.g. "MY_VOB/my/project" instead. (Notice that this is only be possible > with auto-generated config specs as introduced by SCM-287). > PATCH: > The attached maven-scm-patch.txt contains a patch to maven-scm-api, > maven-scm-provider-clearcase and the BootstrapMojo in maven-scm-plugin. I > tested it by trying scm:bootstrap for ClearCase (works now) and SVN (still > works). > After applying the patch, please deploy a new maven-scm snapshot version to > the Apache Snapshot repo as well. > Continuum and the maven-release-manager will have to be changed to pay > attention to this relative path attribute accordingly; I will try to submit > patches in the next days, at least for maven-release-manager. Should these > patches be part of this issue, or should separate issues be created for these > projects? -- This message was sent by Atlassian Jira (v8.20.10#820010)