-
Notifications
You must be signed in to change notification settings - Fork 127
Docker build fix [MOSIP-44274] #1127
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
Signed-off-by: Gokulraj C <110164849+GOKULRAJ136@users.noreply.github.com>
WalkthroughMaven download in Changes
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Signed-off-by: Gokulraj C <110164849+GOKULRAJ136@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (3)
artifacts/pom.xml (3)
221-229: Undefined properties will cause build failure.This artifactItem references
${auth-adapter-java-21.version}and${auth-adapter-java-21.location}, but these properties are not defined in the<properties>section. According to the summary, Java 21 variant properties were removed, but this artifactItem block was not removed.This will cause Maven to either fail the build or use literal unresolved property strings as values.
🐛 Proposed fix: Remove the orphaned artifactItem
- <artifactItem> - <groupId>io.mosip.kernel</groupId> - <artifactId>kernel-auth-adapter</artifactId> - <version>${auth-adapter-java-21.version}</version> - <outputDirectory>${auth-adapter-java-21.location}</outputDirectory> - <!-- Keep the destination filename consistent with the original --> - <destFileName>kernel-auth-adapter.jar</destFileName> - <type>jar</type> - </artifactItem>
261-269: Duplicate artifactItem entry.This
kernel-smsserviceprovider-msg91artifactItem is identical to the one at lines 242-249. This will copy the same artifact twice unnecessarily.🧹 Proposed fix: Remove the duplicate block
-<!-- artifactItem section for smsserviceprovider --> - <artifactItem> - <groupId>io.mosip.kernel</groupId> - <artifactId>kernel-smsserviceprovider-msg91</artifactId> - <version>${kernel-smsserviceprovider.version}</version> - <outputDirectory>${kernel-smsserviceprovider.location}</outputDirectory> - <destFileName>${kernel-smsserviceprovider.fileName}</destFileName> - <type>jar</type> - </artifactItem>
289-297: Undefined properties will cause build failure.This artifactItem references
${kernel-virusscanner-clamav-java-21.version}and${kernel-virusscanner-clamav-java-21.location}, but these properties are not defined. The Java 21 variant properties were removed but this artifactItem was not updated.🐛 Proposed fix: Use the existing non-Java-21 properties
<!-- artifactItem section for virusscanner --> <artifactItem> <groupId>io.mosip.kernel</groupId> <artifactId>kernel-virusscanner-clamav</artifactId> - <version>${kernel-virusscanner-clamav-java-21.version}</version> - <outputDirectory>${kernel-virusscanner-clamav-java-21.location}</outputDirectory> + <version>${kernel-virusscanner-clamav.version}</version> + <outputDirectory>${kernel-virusscanner-clamav.location}</outputDirectory> <destFileName>${kernel-virusscanner-clamav.fileName}</destFileName> <type>jar</type> </artifactItem>
🤖 Fix all issues with AI agents
In `@artifacts/pom.xml`:
- Around line 37-56: Update the ossrh repository configuration: in the
repository with id "ossrh" replace the incorrect <url> value
"https://central.sonatype.com/repositories/snapshots" with the correct Sonatype
snapshots URL "https://central.sonatype.com/repository/maven-snapshots/" by
editing the <url> element inside the ossrh <repository> block in the pom.xml.
| <repositories> | ||
| <repository> | ||
| <id>central</id> | ||
| <name>MavenCentral</name> | ||
| <id>ossrh</id> | ||
| <name>CentralRepository</name> | ||
| <url>https://central.sonatype.com/repositories/snapshots</url> | ||
| <layout>default</layout> | ||
| <url>https://repo1.maven.org/maven2</url> | ||
| <snapshots> | ||
| <enabled>false</enabled> | ||
| <enabled>true</enabled> | ||
| </snapshots> | ||
| </repository> | ||
| <repository> | ||
| <id>ossrh</id> | ||
| <name>MavenSnapshot</name> | ||
| <url>https://oss.sonatype.org/content/repositories/snapshots</url> | ||
| <id>central</id> | ||
| <name>MavenCentral</name> | ||
| <layout>default</layout> | ||
| <url>https://repo1.maven.org/maven2</url> | ||
| <snapshots> | ||
| <enabled>true</enabled> | ||
| <enabled>false</enabled> | ||
| </snapshots> | ||
| </repository> | ||
| </repositories> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🌐 Web query:
Sonatype Central snapshot repository URL 2024 2025
💡 Result:
Common Sonatype snapshot repository URLs (2024–2025):
- New Central Portal snapshots (consume/publish): https://central.sonatype.com/repository/maven-snapshots/ [1].
- OSSRH Nexus snapshots (traditional): https://s01.oss.sonatype.org/content/repositories/snapshots/ and legacy https://oss.sonatype.org/content/repositories/snapshots/ (s01 is the newer host for many users). [1][2]
References:
[1] Sonatype Central — Publish Portal Snapshots.
[2] OSSRH / s01 examples (docs and community guides).
🌐 Web query:
OSSRH migration to Sonatype Central repository configuration
💡 Result:
Summary and steps to migrate from OSSRH to Sonatype Central Publisher
- Understand the change
- OSSRH (oss.sonatype.org / s01.oss.sonatype.org) was sunset; publishing now uses the Central Publisher Portal and Portal APIs. Plan to move authentication from OSSRH credentials to Portal user tokens. [1][2]
- Decide publishing route
- Options: (a) use the Portal directly (Maven plugin, bundle upload, or Portal API); (b) use the OSSRH Staging API compatibility service (to keep existing Nexus2-style plugins working); (c) use third-party/updated plugins that support the Portal. [1][2]
- Obtain access & tokens
- Log in to the Central Publisher Portal with your existing OSSRH account to view/migrate namespaces and generate user tokens. Use Portal user tokens (username/token) instead of OSSRH username/password. Contact Central Support if namespaces are missing. [1]
- Update build configuration — Maven (examples)
- Replace old OSSRH publish settings with the Central plugin or point to the OSSRH Staging API compatibility endpoint if you need minimal changes.
Minimal approach (use OSSRH Staging API compatibility service; replace OSSRH token with Portal token and service URL as directed in Portal docs):
- Configure server credentials in ~/.m2/settings.xml (use Portal token values).
- Use your existing maven-deploy / nexus-staging plugin but point at the compatibility service URL and token per Portal guidance. [2]
Recommended approach (Central publishing plugin):
- Switch to central-publishing-maven-plugin (or follow Portal’s Maven plugin docs) and authenticate with Portal user token. Verify deployments via the Portal UI. [2][3]
- Update build configuration — Gradle (examples)
- If using the gradle-nexus/publish-plugin, supply Portal token credentials to the nexusPublishing sonatype repository block (username = token-username, password = token-value) or set ORG_GRADLE_PROJECT_sonatypeUsername/Password environment variables or ~/.gradle/gradle.properties. The plugin documentation notes OSSRH configs are deprecated and points to the new Central URLs. [3]
- Snapshot and repo URLs
- Snapshot repository URLs changed to Central Portal snapshot repository (e.g. https://central.sonatype.com/repository/maven-snapshots/). Remove/replace any oss.sonatype.org snapshot repository entries. Historical snapshots may not be migrated—confirm what snapshots are available after migration. [1][5]
- Test and verify
- Run a full publish to staging, promote (or follow Portal flow), and verify on Maven Central / Portal deployments page. Check that groupId namespaces transferred and permissions are correct. [1][2]
- If you need minimal friction
- Use the OSSRH Staging API compatibility service to keep your existing plugin workflow while you convert to Portal-native publishing later. Generate a Portal token and update plugin endpoints and credentials per the Portal docs. [2]
Useful Sonatype references
- Central Portal OSSRH sunset & migration overview. [1]
- Portal OSSRH Staging API (compatibility) and publishing options. [2]
- gradle-nexus/publish-plugin notes about deprecation and credential configuration. [3]
- OSSRH sunset announcement / FAQ. [4]
- Snapshot repo URL example and migration notes. [5]
If you want, I can:
- produce copy-paste Maven and Gradle snippets (pom.xml / settings.xml / build.gradle and ~/.m2/settings.xml or ~/.gradle/gradle.properties) tailored to your current setup, or
- check your current build files and produce the exact changes required.
Sources
[1] Sonatype — OSSRH Sunset (Central docs).
[2] Sonatype — Publishing via the Portal OSSRH Staging API (Central docs).
[3] gradle-nexus/publish-plugin (GitHub).
[4] Sonatype — OSSRH sunset announcement / FAQ.
[5] Community migration note showing Central Portal snapshot repo URL.
🌐 Web query:
central.sonatype.com repositories snapshots correct URL
💡 Result:
Use the Central Portal snapshots repo URL:
https://central.sonatype.com/repository/maven-snapshots/ [1][2]
Note: older OSSRH snapshot URLs (e.g. https://oss.sonatype.org/content/repositories/snapshots/) were used historically; new publishing/consuming via the Central Portal uses the central.sonatype.com endpoint. [3]
Sources:
[1] Sonatype repository page for maven-snapshots.
[2] Central publishing docs — Publish Portal Snapshots (consuming example).
[3] Legacy OSSRH snapshot URL reference.
Fix snapshot repository URL in ossrh repository configuration.
The snapshot repository URL is incorrect. According to Sonatype Central documentation, the snapshot repository should be https://central.sonatype.com/repository/maven-snapshots/, not https://central.sonatype.com/repositories/snapshots. Update the <url> element in the ossrh repository configuration (line 39) to use the correct path.
🤖 Prompt for AI Agents
In `@artifacts/pom.xml` around lines 37 - 56, Update the ossrh repository
configuration: in the repository with id "ossrh" replace the incorrect <url>
value "https://central.sonatype.com/repositories/snapshots" with the correct
Sonatype snapshots URL
"https://central.sonatype.com/repository/maven-snapshots/" by editing the <url>
element inside the ossrh <repository> block in the pom.xml.
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.