maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Lennart Jörelid (JIRA) <j...@codehaus.org>
Subject [jira] (MSITE-669) site:stage creates incorrect structure when module paths contains sets of "../"
Date Tue, 18 Dec 2012 06:53:14 GMT

    [ https://jira.codehaus.org/browse/MSITE-669?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=315858#comment-315858
] 

Lennart Jörelid edited comment on MSITE-669 at 12/18/12 12:52 AM:
------------------------------------------------------------------

I don't understand why a project which has a defined siteURL, located below the rootURL (defined
as the distributionManagement URL element of the topmost project in the reactor) would need
to consult its parent settings to define its *staging directory*. If I understand you correctly,
the rootURL for {{site:stage}} is simply given by the distributionManagement/site/url element
in the pom where the {{mvn site:stage}} was launched. 

Your statement, does however imply that the 3 rules for {{site:stage}} work defined above
do not fully describe the assumptions used by the maven-site-plugin and its {{site:stage}}
goal, but that we seem to have two additional requirements:

# The {{site:stage}} goal assumes that all projects within the reactor use the same parent.
# The parent project for all subprojects within a multimodule site:stage run must be the reactor
root (i.e. the project from where {{mvn site:stage}} was run).

These assumptions feel rather constraining, to be honest.
 
My [obviously incorrect] conceptual model is/was that the parent project would only be consulted
to:

# Inherit/merge pom settings. (If no parent is defined, simply use what is defined within
the project itself.)
# Inherit/merge site.xml settings (If no parent is defined, simply use what is defined within
the subproject itself.)
# Read the distributionManagement URL setting within the parent pom in order to create the
link for <menu ref="parent" />

I would suggest that we describe these current requirements/assumptions within the documentation
for {{site:stage}}, and implement a change to make {{site:stage}} yield a navigation structure
matching the reactor's. In the case of the nazgul_tools reactor, its build order structure
is illustrated in an attached image.
                
      was (Author: lj@jguru.se):
    I don't understand why a project which has a defined siteURL, located below the rootURL
(defined as the distributionManagement URL element of the topmost project in the reactor)
would need to consult its parent settings to define its *staging directory*. That implies
the 3 rules for {{site:stage}} work defined above do not fully describe the assumptions used
by the maven-site-plugin and its {{site:stage}} goal, but that we seem to have two additional
requirements:

# The {{site:stage}} goal assumes that all projects within the reactor use the same parent.
# The parent project of a site:stage run must be the reactor root.

These assumptions feel rather constraining, to be honest.
 
My [obviously incorrect] conceptual model is/was that the parent project would only be consulted
to:

# Inherit/merge pom settings. (If no parent is defined, simply use what is defined within
the project itself.)
# Inherit/merge site.xml settings (If no parent is defined, simply use what is defined within
the subproject itself.)
# Read the distributionManagement URL setting within the parent pom in order to create the
link for <menu ref="parent" />

I would suggest that we describe these current requirements/assumptions within the documentation
for {{site:stage}}, and implement a change to make {{site:stage}} yield a navigation structure
matching the reactor's. In the case of the nazgul_tools reactor, its build order structure
is illustrated in an attached image.
                  
> site:stage creates incorrect structure when module paths contains sets of "../"
> -------------------------------------------------------------------------------
>
>                 Key: MSITE-669
>                 URL: https://jira.codehaus.org/browse/MSITE-669
>             Project: Maven 2.x and 3.x Site Plugin
>          Issue Type: Bug
>          Components: multi module, relative links, site:stage(-deploy)
>    Affects Versions: 3.1, 3.2
>            Reporter: Lennart Jörelid
>            Assignee: Lukas Theussl
>         Attachments: nazgul_tools_project_dependencies.png, nazgul_tools_project_dependencies.png,
nazgul_tools_reactor_structure.png, sample.zip
>
>
> Given the module definitions given below, the site:stage goal produces sets of maps relative
to the staging directory - i.e. outside of the target directory.
> {code:xml} 
> <modules>
>   <module>../../validation/validation-api</module>
>   <module>../../validation/validation-aspect</module>
>   <module>../parent</module>
> </modules>
> {code}
> The staged site should be fully included within the staging directory. It would appear
that relativization of links for site:stage should take special links into consideration.

--
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

       

Mime
View raw message