Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 34 additions & 6 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -313,13 +313,13 @@ limitations under the License.

<distributionManagement>
<repository>
<id>plexus-releases</id>
<name>Plexus Release Repository</name>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
<id>sonatype-central-portal</id>
<name>Sonatype Central Portal</name>
<url>https://repo.maven.apache.org/maven2</url>
</repository>
<snapshotRepository>
<id>plexus-snapshots</id>
<name>Plexus Snapshot Repository</name>
<id>${plexusDistMgmtSnapshotsId}</id>
<name>${plexusDistMgmtSnapshotsName}</name>
<url>${plexusDistMgmtSnapshotsUrl}</url>
</snapshotRepository>
<!-- site distribution management must be override in child projects -->
Expand All @@ -340,17 +340,28 @@ limitations under the License.
<maven.compiler.proc>none</maven.compiler.proc>
<maven.compiler.showDeprecation>true</maven.compiler.showDeprecation>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<plexusDistMgmtSnapshotsUrl>https://oss.sonatype.org/content/repositories/plexus-snapshots</plexusDistMgmtSnapshotsUrl>

<plexusDistMgmtSnapshotsId>sonatype-central-portal</plexusDistMgmtSnapshotsId>
<plexusDistMgmtSnapshotsName>Sonatype Central Snapshots</plexusDistMgmtSnapshotsName>
<plexusDistMgmtSnapshotsUrl>https://central.sonatype.com/repository/maven-snapshots</plexusDistMgmtSnapshotsUrl>

<project.build.outputTimestamp>2025-05-23T18:11:49Z</project.build.outputTimestamp>
<gpg.useagent>true</gpg.useagent>
<spotless-maven-plugin.version>2.44.5</spotless-maven-plugin.version>
<mavenPluginToolsVersion>3.15.1</mavenPluginToolsVersion>
<mavenFluidoSkinVersion>2.1.0</mavenFluidoSkinVersion>
<mavenSurefireVersion>3.5.3</mavenSurefireVersion>
<junit5Version>5.13.0</junit5Version>
<njord.version>0.7.1</njord.version>
<spotless.action>apply</spotless.action>
<sisuMavenPluginVersion>0.9.0.M4</sisuMavenPluginVersion>
<invoker.streamLogsOnFailures>true</invoker.streamLogsOnFailures>

<!-- njord configuration -->
<njord.autoPublish>true</njord.autoPublish>
<njord.publishingType>automatic</njord.publishingType>
<njord.waitForStates>true</njord.waitForStates>
<njord.enabled>false</njord.enabled>
Copy link
Contributor

@kwin kwin Oct 10, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@cstamas What does that do? I thought that njord would only ever kick in if the distribution URI has scheme njord...

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This completely disables Njord (by not creating njord session), and hence no njord component will ever "kick in", as all of them start by checking the session existence.

Release profile enables it:
https://github.com/codehaus-plexus/plexus-pom/blob/master/pom.xml#L821-L822

This just makes sure that in "normal" operations Njord is not meddling for sure, and even in case of release, it as you say, only does "local staging" and later publishing.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unsure why was it done like it, as this really prevents Njord to stage snapshots for example, but that operation currently supports m-deploy-p as well, so no real need for Njord...

</properties>

<dependencyManagement>
Expand All @@ -368,6 +379,11 @@ limitations under the License.
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>eu.maveniverse.maven.plugins</groupId>
<artifactId>njord</artifactId>
<version>${njord.version}</version>
</plugin>
<!-- set versions of common plugins for reproducibility, ordered alphabetically -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
Expand Down Expand Up @@ -683,6 +699,13 @@ limitations under the License.
</executions>
</plugin>
</plugins>
<extensions>
<extension>
<groupId>eu.maveniverse.maven.njord</groupId>
<artifactId>extension</artifactId>
<version>${njord.version}</version>
</extension>
</extensions>
</build>

<reporting>
Expand Down Expand Up @@ -786,6 +809,11 @@ limitations under the License.
</profile>
<profile>
<id>plexus-release</id>
<properties>
<minimalMavenBuildVersion>3.9.0</minimalMavenBuildVersion>
<!-- use njord during release -->
<njord.enabled>true</njord.enabled>
</properties>
<build>
<plugins>
<!-- Create a source-release artifact that contains the fully buildable
Expand Down
11 changes: 0 additions & 11 deletions src/site/apt/index.apt

This file was deleted.

27 changes: 27 additions & 0 deletions src/site/markdown/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Plexus Parent POM

Plexus Parent POM defines common [plugins](./plugin-management.html), reporting and release configuration.

## Preparing the environment for publishing vie the Central Portal

Release manager should include the following sections in your personal `settings.xml`:

```xml
<settings xmlns="http://maven.apache.org/SETTINGS/1.2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 https://maven.apache.org/xsd/settings-1.2.0.xsd">
<servers>
<server>
<id>sonatype-central-portal</id>
<username>jqhacker</username> <!-- central portal token -->
<password>SeCrEt</password> <!-- central portal token -->
<configuration>
<njord.publisher>sonatype-cp</njord.publisher>
<njord.releaseUrl>njord:template:release-sca</njord.releaseUrl>
</configuration>
</server>
</servers>
</settings>
```

Tokens can be obtained from https://central.sonatype.com/account