Parent POM, BOM, and workspace-orchestration plugin for the IKE Network build pipeline.
| Module | Artifact | Purpose |
|---|---|---|
ike-parent |
network.ike.platform:ike-parent |
Parent POM — dependency and plugin management, profiles |
ike-workspace-maven-plugin |
network.ike.platform:ike-workspace-maven-plugin |
ws:* goals for multi-repo workspace orchestration |
ike-bom |
network.ike.platform:ike-bom |
Auto-generated BOM for external <scope>import</scope> consumers |
mvn clean installDownstream projects inherit from ike-parent (check Nexus or the
GitHub releases
for the current version — replace 54 below):
<parent>
<groupId>network.ike.platform</groupId>
<artifactId>ike-parent</artifactId>
<version>54</version>
</parent>Inheriting projects MUST also declare their own
<distributionManagement><site> URL — the inherited template
resolves to the in-reactor location and is wrong for external
consumers. See ike-parent/CLAUDE.md and
IKE-Network/ike-issues#383
for the override pattern. A build enforcer fails projects that
miss this.
Consumers who do not want to inherit ike-parent's build conventions
can still align dependency versions by importing the BOM:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>network.ike.platform</groupId>
<artifactId>ike-bom</artifactId>
<version>54</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>ike-tooling → ike-docs → [ike-platform] → { doc-example, example-project, ike-example-its } → ike-example-ws
The foundation cascade (ike-tooling → ike-docs → ike-platform) is
orchestrated by ike-maven-plugin:release-cascade, which assembles
the order from each repo's own src/main/cascade/release-cascade.yaml
(IKE-Network/ike-issues#420). See
cutting-a-release.adoc
for the full procedure.
Release order is structurally upstream-first: ike-parent's
<pluginManagement> declares ike-maven-plugin at
${ike-tooling.version} and ike-doc-maven-plugin at
${ike-docs.version}, both of which must be resolvable from Nexus
when downstream reactors load.
Earlier revisions of these docs cited extension-realm timing
(<extensions>true</extensions> plugins resolving at project-load
time, before property interpolation) as the reason for literal-
version pinning. That constraint was eliminated in
IKE-Network/ike-issues#321:
both upstream plugins retired their custom-packaging registrations
and ike-parent dropped both <extensions>true</extensions>
declarations. The cascade ordering is unchanged; the literal-version
pinning is gone. See
ike-parent/src/site/asciidoc/index.adoc
for the full design rationale.
ike-platform is the IKE Network's parent-POM tier and follows
the doc-as-code philosophy: build conventions, documentation
standards, and AI-assistant guidance live as versioned Markdown
files in
ike-build-standards
and are unpacked into every project that inherits ike-parent
(into .claude/standards/ at validate phase). When a developer —
or Claude itself — opens an IKE project, the agent reads those
standards and applies them automatically; contributors don't have
to memorize the conventions.
The standards most directly relevant to ike-platform are
IKE-MAVEN.md
(IKE-specific Maven conventions),
IKE-RELEASE.md
(cascade and recovery procedures), and
IKE-CLASSIFIERS.md
(artifact classifier conventions). See the
full inventory.
- Documentation:
https://ike.network/ike-platform/ike-parent— parent POM rationale + referenceike-workspace-maven-plugin—ws:*goal referenceike-bom— BOM coordinates
- Build standards:
ike-build-standards - Issues:
IKE-Network/ike-issues(cross-project tracker) - Source:
IKE-Network/ike-platform
Split from the archived ike-pipeline repo to resolve a Maven
extension-plugin reactor-load cycle. See
IKE-Network/ike-issues#216
and dev-ike-repo-split-architecture in ike-lab-documents/topics/.