[ https://jira.codehaus.org/browse/MSITE-672?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=325598#comment-325598 ]
Herve Boutemy edited comment on MSITE-672 at 5/24/13 7:36 PM: -------------------------------------------------------------- bq. Your first link mentions nothing about such arbitrary transformations as far as I can tell, and I note that it's been updated today, and as such looked extra hard. Blind? not blind, it has been published yesterday (notice the LATEST in the link, the content varies in time) bq. I'd be quite happy for the process you describe to take place, BUT IT DOESN'T have a URL, only a variable, intended to be determined in the child. You make a difference between a value that's an effective URL and a value that's a variable, but Maven model-builder doesn't make such difference: it works at String-level, the fact that parent value contains "${}" doesn't change the fact that the actual artifactId is added during inheritance assembly (and before model interpolation, ie replacement of "${}" with actual value) IIUC, we would require to be able to avoid default child urls calculation, consistently in project.url and project.distributionManagement.site.url, but probably not project.scm.[connection+developerConnection+url] (AFAIK, but perhaps someone will find a case where something similar in project.scm is useful: there was a discussion in case of git, if I remember correctly) Notice that it would be a Maven core change (to track with a MNG Jira issue): we need to be extremely clear before changing core, because it will be harder to change in time (not a plugin version, that can be different in every project) Notice that I understand the need to avoid copy/paste too: we're facing the exact same issue in Maven components since we introduced svnpubsub. The solution we found in Maven is: 1. introduce a "maven.site.path" property, that can contain references to artifactId property if needed, or fixed value if we don't want its value to change in child pom 2. copy/paste fixed url+project.distributionManagement.site.url value in every pom, with fixed value that references previous maven.site.path property (see [maven-site-plugin pom|http://svn.apache.org/viewvc/maven/plugins/tags/maven-site-plugin-3.3/pom.xml?revision=1480826&view=markup#l185] for example) I know it's not ideal, but for the moment, I didn't find any solution that would be general, only hack was (Author: hboutemy): bq. Your first link mentions nothing about such arbitrary transformations as far as I can tell, and I note that it's been updated today, and as such looked extra hard. Blind? not blind, it has been published yesterday (notice the LATEST in the link, the content varies in time) bq. I'd be quite happy for the process you describe to take place, BUT IT DOESN'T have a URL, only a variable, intended to be determined in the child. You make a difference between a value that's an effective URL and a value that's a variable, but Maven model-builder doesn't make such difference: it works at String-level, the fact that parent value contains "${}" doesn't change the fact that the actual artifactId is added during inheritance assembly (and before model interpolation, ie replacement of "${}" with actual value) IIUC, we would require to be able to avoid default child urls calculation, consistently in project.url and project.distributionManagement.site.url, but probably not project.scm.[connection+developerConnection+url] (AFAIK, but perhaps someone will find a case where something similar in project.scm is useful: there was a discussion in case of git, if I remember correctly) Notice that it would be a Maven core change (to track with a MNG Jira issue): we need to be extremely clear before changing core, because it will be harder to change in time (not a plugin version, that can be different in every project) Notice that I understand the need to avoid copy/paste too: we're facing the exact same issue in Maven components since we introduced svnpubsub. The solution we found in Maven is: 1. introduce a "maven.site.path" property, that can contain references to artifactId property if needed, or fixed value if we don't want its value to change in child pom 2. copy/paste fixed url+project.distributionManagement.site.url value in every pom, with fixed value that references previous maven.site.path property I know it's not ideal, but for the moment, I didn't find any solution that would be general, only hack > Interpolation of site deploy URL not done in child > -------------------------------------------------- > > Key: MSITE-672 > URL: https://jira.codehaus.org/browse/MSITE-672 > Project: Maven 2.x and 3.x Site Plugin > Issue Type: Wish > Components: site:deploy > Affects Versions: 3.0 > Environment: Debian Linux OpenJDK 7 mvn 3.0.4 > Reporter: Fred Cooke > Assignee: Herve Boutemy > > I have my parent distribution site config filled out like so: > {{<url>scp://private-site/home/private/site/releases/$\{project.groupId}/$\{project.artifactId}/$\{project.version}/</url>}} > When the child tries to release:perform or {{site:deploy}} it tries to upload > with the parent arifactId, groupId and version instead of the current project > values. These should be interpolated like any other variables in the POM to > prevent needless duplication in all children. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira