InditexTech / InditexTech/gh-actions

[Java][E38] Resolve Maven Central packages by artifactId at any reactor depth

Open
#10 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
0
Forks
0
Avg merge
1h 3m
Merged PRs (30d)
8

Description

## Parent and sequencing

Related engine design epic: InditexTech/internal-ops#55. This action change must land and expose an immutable release before any `independent` Java monorepo caller can adopt it; caller re-pins then follow through governance.

## Problem

`maven-central` currently interprets `packages[]` as flat directories and invokes Maven with path-shaped `-pl` values. The Java governance contract is converging on Maven `artifactId`, and nested reactors cannot be represented safely by the current action.

This is not blocking the current karatetools/scs-outbox migration while both remain `release.strategy: locked-step` and pass an empty package list. It becomes blocking for the first `independent` monorepo or any caller that forwards artifact IDs.

## Acceptance criteria

- Resolve each non-empty package through Maven reactor identity (`:`) at arbitrary module depth.
- Accept the empty list required by `locked-step` without discovering or publishing extra modules.
- Reject unknown, duplicate, aggregate-only, fixture, test, or unintended classifier artifacts.
- Keep action and `validate_publish.py` semantics identical.
- Exercise nested-reactor behavior without a real publish, then perform any required registry proof only on an authorized `testing/` canary.
- Release an immutable action SHA before updating archetype callers.

## Evidence

- `.migration/bugs.md`, E38.
- Current action: `maven-central/action.yml` package input and `mvn -pl` invocation.
- Current validator: `maven-central/validate_publish.py` flat path checks.

Contributor guide

No contributing guide indexed for this repository

Research direction

Read maven-central/action.yml and maven-central/validate_publish.py first, tracing the package input through the current mvn -pl invocation and flat path checks. Exercise nested-reactor resolution without a real publish, verify empty-list and rejection behavior plus matching action/validator semantics, and confirm the immutable action SHA requirement before caller updates.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, java, python
Domain
build-system, ci-cd, release
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.