[
https://jira.codehaus.org/browse/MRELEASE-814?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=317241#comment-317241
]
Fred Cooke commented on MRELEASE-814:
-------------------------------------
You could have each module in a git repo (nested within the root one) and need
to push to and tag each of them, however I'm unsure if anyone would actually do
that. If you were using a pure aggregator (not used as parent) to release the
"module" projects, then you could absolutely expect that they have a URL each.
It would, however, never have a random path-segment dumped onto it.
Solving this properly probably means an independent per-SCM-provider
implementation. And basing each off of a thorough use-case analysis of that SCM
system. Solving it quickly and acceptably can be done with a simple fix that
won't affect existing users of hierarchicle legacy SCMs such as SVN.
Re my earlier question, does the release plugin commit each module separately?
Seems very non-atomic/dangerous/ugly to do so. I'd expect it to be committed
from above, and only committed/tagged separately from below if using an
override in the module.
> Property interpolation of developerConnection broken when inheritting from
> parent
> ---------------------------------------------------------------------------------
>
> Key: MRELEASE-814
> URL: https://jira.codehaus.org/browse/MRELEASE-814
> Project: Maven 2.x Release Plugin
> Issue Type: Bug
> Components: Git, prepare
> Affects Versions: 2.0, 2.3.2, 2.4
> Environment: Debian Linux OpenJDK 7 mvn 3.0.4
> Reporter: Fred Cooke
> Priority: Critical
> Attachments: demo.project.git.release.bug.tgz
>
>
> If {{developerConnection}} is setup like this in a parent and inherited:
> {code:xml}
> <developerConnection>scm:git:git:${project.groupId}/${project.artifactId}.git</developerConnection>
> {code}
> Then the Git SCM URL is incorrect when attempting to do a {{release:prepare}}
> (and perhaps other operations)
> In the example project that I've included this is what it tries to do:
> {noformat}
> [INFO] Executing: /bin/sh -c cd /home/fred/workspace/ShouldSeeThisOnceOnly &&
> git push git:com.example/ShouldSeeThisOnceOnly.git/ShouldSeeThisOnceOnly
> master:master
> [ERROR] Failed to execute goal
> org.apache.maven.plugins:maven-release-plugin:2.4:prepare (default-cli) on
> project ShouldSeeThisOnceOnly: Unable to commit files
> [ERROR] W access for
> com.example/ShouldSeeThisOnceOnly.git/ShouldSeeThisOnceOnly DENIED to fred
> {noformat}
> I've used this same method with the property directly in the project POM with
> success. It seems that having it in the parent is the issue.
> Note, .ssh/config setup is required for a URL of this nature:
> {noformat}
> host git
> user git
> hostname localhost
> port 22
> identityfile ~/.ssh/id_rsa
> {noformat}
> Change these, and the deploy details to suit yourself.
> I sincerely hope that I'm doing something stupid and that this is not a bug
> as I desperately need to do some releases and waiting for a fix wouldn't be
> ideal, nor would hacking what should be inherited into each POM. Sadly, I
> doubt that I'm wrong this time, as I copy pasted the exact contents from my
> bogus parent into my pom, removed the parent ref, and it works as expected.
> This seems like an ugly hangover from SVN usage to me.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira