You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Mykel Alvis (JIRA)" <ji...@apache.org> on 2018/08/17 15:34:00 UTC
[jira] [Updated] (MNGSITE-348) Multi-module builds staging uses
"staging" for the first module and "Staging" for subsequent stagings
[ https://issues.apache.org/jira/browse/MNGSITE-348?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mykel Alvis updated MNGSITE-348:
--------------------------------
Description:
I have a project that is a hierarchical tree of parents (i..e everything is a "pom" type).
Only the root project has a
<distributionManagement><site>
<id>nexus</id>
<url>[https://artifacts.example.io/repository/sites/DELETE/io.example/example-parent-support/25-SNAPSHOT/]</url>
</site></distributionManagement>
and all sub-modules are intended to inherit the "standard" site structure based on the fact that module names are the same as the artifact identifier.
No config has a topSiteURL set
Current config of the site plugin is as follows (but has been juggled many times with equivalent results):
{quote} <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>${maven.site.plugin.version}</version>
<configuration>
</configuration>
<dependencies>
<dependency>
<groupId>org.apache.maven.doxia</groupId>
<artifactId>doxia-site-renderer</artifactId>
<version>1.8.1</version>
</dependency>
<dependency>
<groupId>org.apache.maven.doxia</groupId>
<artifactId>doxia-module-markdown</artifactId>
<version>1.8</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.doxia</groupId>
<artifactId>doxia-module-fml</artifactId>
<version>1.8</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.doxia</groupId>
<artifactId>doxia-module-latex</artifactId>
<version>1.8</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.doxia</groupId>
<artifactId>doxia-module-apt</artifactId>
<version>1.8</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.doxia</groupId>
<artifactId>doxia-module-xdoc</artifactId>
<version>1.8</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-webdav-jackrabbit</artifactId>
<version>3.1.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
</plugin>
{quote}
site:site works essentially as-expected.
site:stage does something totally weird.
{{mvn site:stage}}
{{[INFO] Scanning for projects...}}
{{[INFO] ------------------------------------------------------------------------}}
{{[INFO] Reactor Build Order:}}
{{[INFO] }}
{{[INFO] example-parent-support [pom]}}
{{[INFO] example-parent-minimal [pom]}}
{{[INFO] example-oss-root [pom]}}
{{.}}
{{.}}
{{.}}
{{.}}
{{[INFO] }}
{{[INFO] ----------------< io.example:example-parent-support >-----------------}}
{{[INFO] Building example-parent-support 25-SNAPSHOT [1/10]}}
{{[INFO] --------------------------------[ pom ]---------------------------------}}
{{[INFO]}}
{{[INFO] — maven-site-plugin:3.7.1:stage (default-cli) @ example-parent-support ---}}
{{[INFO] Using this base directory for staging: /home/mykel.alvis/git/example-parent-support/target/staging}}
{{[INFO] Pushing /home/mykel.alvis/git/example-parent-support/target/site}}
{{[INFO] >>> to [file:///home/mykel.alvis/git/example-parent-support/target/staging/./|file:///home/mykel.alvis/git/example-parent-support/target/staging/]}}
{{[INFO] }}
{{[INFO] ----------------< io.example:example-parent-minimal >-----------------}}
{{[INFO] Building example-parent-minimal 25-SNAPSHOT [2/10]}}
{{[INFO] --------------------------------[ pom ]---------------------------------}}
{{[INFO] }}
{{[INFO] — maven-site-plugin:3.7.1:stage (default-cli) @ example-parent-minimal ---}}
{{[INFO] Using this base directory for staging: /home/mykel.alvis/git/example-parent-support/example-parent-minimal/target/Staging}}
{{[INFO] Pushing /home/mykel.alvis/git/example-parent-support/example-parent-minimal/target/site}}
{{[INFO] >>> to [file:///home/mykel.alvis/git/example-parent-support/example-parent-minimal/target/Staging/../../../DELETE/io.example/example-parent-support/25-SNAPSHOT/example-parent-minimal|file:///home/mykel.alvis/git/example-parent-support/DELETE/io.example/example-parent-support/25-SNAPSHOT/example-parent-minimal]}}
{{[INFO]}}{{ }}
Note that the first target was
{{target/staging}}
and the second was
{{target/Staging}}
What's up with that?
It appears to be causing staging to fail, and I've been live-debugging maven site runs for 3 days trying to spot where the
"staging" -> "Staging"
change occurs, but so far all I can tell is that the LifecycleModuleBuilder (and/or something above it inthe call chain) is supplying the subsequent iterations of the plugin execution from the reactor with `...target/Staging` somehow. I just don't know how because single-stepping through maven is somewhat like getting caught in a maze of twisty passages, all alike.
I accept (somewhat) that some people consider sites as second-class citizens outside of plugins, but I really want them to work correctly. Audits go a lot easier with good docs.
was:
I have a project that is a hierarchical tree of parents (i..e everything is a "pom" type).
Only the root project has a
<distributionManagement><site>
<id>nexus</id>
<url>https://artifacts.example.io/repository/sites/DELETE/io.example/example-parent-support/25-SNAPSHOT/</url>
</site></distributionManagement>
and all sub-modules are intended to inherit the "standard" site structure based on the fact that module names are the same as the artifact identifier.
No config has a topSiteURL set
Current config of the site plugin is as follows (but has been juggled many times with equivalent results):
{{ <plugin>}}
{{ <groupId>org.apache.maven.plugins</groupId>}}
{{ <artifactId>maven-site-plugin</artifactId>}}
{{ <version>3.7.1</version>}}
{{ <configuration>}}
{{ </configuration>}}
{{ <dependencies>}}
{{ <dependency>}}
{{ <groupId>org.apache.maven.doxia</groupId>}}
{{ <artifactId>doxia-site-renderer</artifactId>}}
{{ <version>1.8.1</version>}}
{{ </dependency>}}
{{ <dependency>}}
{{ <groupId>org.apache.maven.doxia</groupId>}}
{{ <artifactId>doxia-module-markdown</artifactId>}}
{{ <version>1.8</version>}}
{{ <scope>compile</scope>}}
{{ </dependency>}}
{{ <dependency>}}
{{ <groupId>org.apache.maven.doxia</groupId>}}
{{ <artifactId>doxia-module-fml</artifactId>}}
{{ <version>1.8</version>}}
{{ <scope>compile</scope>}}
{{ </dependency>}}
{{ <dependency>}}
{{ <groupId>org.apache.maven.doxia</groupId>}}
{{ <artifactId>doxia-module-latex</artifactId>}}
{{ <version>1.8</version>}}
{{ <scope>compile</scope>}}
{{ </dependency>}}
{{ <dependency>}}
{{ <groupId>org.apache.maven.doxia</groupId>}}
{{ <artifactId>doxia-module-apt</artifactId>}}
{{ <version>1.8</version>}}
{{ <scope>compile</scope>}}
{{ </dependency>}}
{{ <dependency>}}
{{ <groupId>org.apache.maven.doxia</groupId>}}
{{ <artifactId>doxia-module-xdoc</artifactId>}}
{{ <version>1.8</version>}}
{{ <scope>compile</scope>}}
{{ </dependency>}}
{{ <dependency>}}
{{ <groupId>org.apache.maven.wagon</groupId>}}
{{ <artifactId>wagon-webdav-jackrabbit</artifactId>}}
{{ <version>3.1.0</version>}}
{{ <scope>compile</scope>}}
{{ </dependency>}}
{{ </dependencies>}}
{{ </plugin>}}
site:site works essentially as-expected.
site:stage does something totally weird.
{{mvn site:stage}}
{{[INFO] Scanning for projects...}}
{{[INFO] ------------------------------------------------------------------------}}
{{[INFO] Reactor Build Order:}}
{{[INFO] }}
{{[INFO] example-parent-support [pom]}}
{{[INFO] example-parent-minimal [pom]}}
{{[INFO] example-oss-root [pom]}}
{{.}}
{{.}}
{{.}}
{{.}}
{{[INFO] }}
{{[INFO] ----------------< io.example:example-parent-support >-----------------}}
{{[INFO] Building example-parent-support 25-SNAPSHOT [1/10]}}
{{[INFO] --------------------------------[ pom ]---------------------------------}}
{{[INFO]}}
{{[INFO] --- maven-site-plugin:3.7.1:stage (default-cli) @ example-parent-support ---}}
{{[INFO] Using this base directory for staging: /home/mykel.alvis/git/example-parent-support/target/staging}}
{{[INFO] Pushing /home/mykel.alvis/git/example-parent-support/target/site}}
{{[INFO] >>> to file:///home/mykel.alvis/git/example-parent-support/target/staging/./}}
{{[INFO] }}
{{[INFO] ----------------< io.example:example-parent-minimal >-----------------}}
{{[INFO] Building example-parent-minimal 25-SNAPSHOT [2/10]}}
{{[INFO] --------------------------------[ pom ]---------------------------------}}
{{[INFO] }}
{{[INFO] --- maven-site-plugin:3.7.1:stage (default-cli) @ example-parent-minimal ---}}
{{[INFO] Using this base directory for staging: /home/mykel.alvis/git/example-parent-support/example-parent-minimal/target/Staging}}
{{[INFO] Pushing /home/mykel.alvis/git/example-parent-support/example-parent-minimal/target/site}}
{{[INFO] >>> to file:///home/mykel.alvis/git/example-parent-support/example-parent-minimal/target/Staging/../../../DELETE/io.example/example-parent-support/25-SNAPSHOT/example-parent-minimal}}
{{[INFO]}}{{ }}
Note that the first target was
{{target/staging}}
and the second was
{{target/Staging}}
What's up with that?
It appears to be causing staging to fail, and I've been live-debugging maven site runs for 3 days trying to spot where the
"staging" -> "Staging"
change occurs, but so far all I can tell is that the LifecycleModuleBuilder (and/or something above it inthe call chain) is supplying the subsequent iterations of the plugin execution from the reactor with `...target/Staging` somehow. I just don't know how because single-stepping through maven is somewhat like getting caught in a maze of twisty passages, all alike.
I accept (somewhat) that some people consider sites as second-class citizens outside of plugins, but I really want them to work correctly. Audits go a lot easier with good docs.
> Multi-module builds staging uses "staging" for the first module and "Staging" for subsequent stagings
> -----------------------------------------------------------------------------------------------------
>
> Key: MNGSITE-348
> URL: https://issues.apache.org/jira/browse/MNGSITE-348
> Project: Maven Project Web Site
> Issue Type: Bug
> Environment: Case-sensitive filesystems (i.e. unix-like, primarily) with maven 3.5.4
> Reporter: Mykel Alvis
> Priority: Major
>
> I have a project that is a hierarchical tree of parents (i..e everything is a "pom" type).
> Only the root project has a
> <distributionManagement><site>
> <id>nexus</id>
> <url>[https://artifacts.example.io/repository/sites/DELETE/io.example/example-parent-support/25-SNAPSHOT/]</url>
> </site></distributionManagement>
> and all sub-modules are intended to inherit the "standard" site structure based on the fact that module names are the same as the artifact identifier.
> No config has a topSiteURL set
> Current config of the site plugin is as follows (but has been juggled many times with equivalent results):
> {quote} <plugin>
> <groupId>org.apache.maven.plugins</groupId>
> <artifactId>maven-site-plugin</artifactId>
> <version>${maven.site.plugin.version}</version>
> <configuration>
> </configuration>
> <dependencies>
> <dependency>
> <groupId>org.apache.maven.doxia</groupId>
> <artifactId>doxia-site-renderer</artifactId>
> <version>1.8.1</version>
> </dependency>
> <dependency>
> <groupId>org.apache.maven.doxia</groupId>
> <artifactId>doxia-module-markdown</artifactId>
> <version>1.8</version>
> <scope>compile</scope>
> </dependency>
> <dependency>
> <groupId>org.apache.maven.doxia</groupId>
> <artifactId>doxia-module-fml</artifactId>
> <version>1.8</version>
> <scope>compile</scope>
> </dependency>
> <dependency>
> <groupId>org.apache.maven.doxia</groupId>
> <artifactId>doxia-module-latex</artifactId>
> <version>1.8</version>
> <scope>compile</scope>
> </dependency>
> <dependency>
> <groupId>org.apache.maven.doxia</groupId>
> <artifactId>doxia-module-apt</artifactId>
> <version>1.8</version>
> <scope>compile</scope>
> </dependency>
> <dependency>
> <groupId>org.apache.maven.doxia</groupId>
> <artifactId>doxia-module-xdoc</artifactId>
> <version>1.8</version>
> <scope>compile</scope>
> </dependency>
> <dependency>
> <groupId>org.apache.maven.wagon</groupId>
> <artifactId>wagon-webdav-jackrabbit</artifactId>
> <version>3.1.0</version>
> <scope>compile</scope>
> </dependency>
> </dependencies>
> </plugin>
> {quote}
>
>
> site:site works essentially as-expected.
> site:stage does something totally weird.
> {{mvn site:stage}}
> {{[INFO] Scanning for projects...}}
> {{[INFO] ------------------------------------------------------------------------}}
> {{[INFO] Reactor Build Order:}}
> {{[INFO] }}
> {{[INFO] example-parent-support [pom]}}
> {{[INFO] example-parent-minimal [pom]}}
> {{[INFO] example-oss-root [pom]}}
> {{.}}
> {{.}}
> {{.}}
> {{.}}
> {{[INFO] }}
> {{[INFO] ----------------< io.example:example-parent-support >-----------------}}
> {{[INFO] Building example-parent-support 25-SNAPSHOT [1/10]}}
> {{[INFO] --------------------------------[ pom ]---------------------------------}}
> {{[INFO]}}
> {{[INFO] — maven-site-plugin:3.7.1:stage (default-cli) @ example-parent-support ---}}
> {{[INFO] Using this base directory for staging: /home/mykel.alvis/git/example-parent-support/target/staging}}
> {{[INFO] Pushing /home/mykel.alvis/git/example-parent-support/target/site}}
> {{[INFO] >>> to [file:///home/mykel.alvis/git/example-parent-support/target/staging/./|file:///home/mykel.alvis/git/example-parent-support/target/staging/]}}
> {{[INFO] }}
> {{[INFO] ----------------< io.example:example-parent-minimal >-----------------}}
> {{[INFO] Building example-parent-minimal 25-SNAPSHOT [2/10]}}
> {{[INFO] --------------------------------[ pom ]---------------------------------}}
> {{[INFO] }}
> {{[INFO] — maven-site-plugin:3.7.1:stage (default-cli) @ example-parent-minimal ---}}
> {{[INFO] Using this base directory for staging: /home/mykel.alvis/git/example-parent-support/example-parent-minimal/target/Staging}}
> {{[INFO] Pushing /home/mykel.alvis/git/example-parent-support/example-parent-minimal/target/site}}
> {{[INFO] >>> to [file:///home/mykel.alvis/git/example-parent-support/example-parent-minimal/target/Staging/../../../DELETE/io.example/example-parent-support/25-SNAPSHOT/example-parent-minimal|file:///home/mykel.alvis/git/example-parent-support/DELETE/io.example/example-parent-support/25-SNAPSHOT/example-parent-minimal]}}
> {{[INFO]}}{{ }}
>
> Note that the first target was
> {{target/staging}}
> and the second was
> {{target/Staging}}
> What's up with that?
> It appears to be causing staging to fail, and I've been live-debugging maven site runs for 3 days trying to spot where the
> "staging" -> "Staging"
> change occurs, but so far all I can tell is that the LifecycleModuleBuilder (and/or something above it inthe call chain) is supplying the subsequent iterations of the plugin execution from the reactor with `...target/Staging` somehow. I just don't know how because single-stepping through maven is somewhat like getting caught in a maze of twisty passages, all alike.
> I accept (somewhat) that some people consider sites as second-class citizens outside of plugins, but I really want them to work correctly. Audits go a lot easier with good docs.
>
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)