Skip to content

[2.x] Merge shell tests into the Java CI pipeline#1121

Merged
mawiesne merged 1 commit into
opennlp-2.xfrom
ci-merge-shell-tests-into-build-2x
Jun 26, 2026
Merged

[2.x] Merge shell tests into the Java CI pipeline#1121
mawiesne merged 1 commit into
opennlp-2.xfrom
ci-merge-shell-tests-into-build-2x

Conversation

@rzo1

@rzo1 rzo1 commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

What

Runs the shell (bats/Pester) tests as a stage after the regular build in maven.yml, and removes the standalone shell-tests.yml workflow. (Backport of the same change for opennlp-2.x.)

Why

Previously the distribution was built 12× per run: 9 in maven.yml (3 OS × 3 JDK) plus 3 more in shell-tests.yml (one per OS), purely to produce the tarball the shell tests run against.

The binary distribution is pure-Java and platform-independent, so it is now:

  1. Built once in the build job (Ubuntu / JDK 17) and uploaded via actions/upload-artifact.
  2. Downloaded by the per-OS shell-test jobs (needs: build) via actions/download-artifact, which then extract and run bats (Ubuntu/macOS) / Pester (Windows).

This drops the 3 redundant Maven builds per run.

ASF policy note

actions/upload-artifact and actions/download-artifact are in the actions/* namespace, which is automatically allowed under the ASF GitHub Actions policy (alongside apache/* and github/*). No INFRA allowlist change is required.

@rzo1 rzo1 requested review from atarora, krickert and mawiesne June 25, 2026 13:23
@rzo1 rzo1 self-assigned this Jun 25, 2026
@rzo1 rzo1 changed the title Merge shell tests into the Java CI pipeline [2.x] Merge shell tests into the Java CI pipeline Jun 25, 2026
@mawiesne

Copy link
Copy Markdown
Contributor

@rzo1 Can you rebase this PR (2.x) pls?

Run the shell (bats/Pester) tests as a stage after the regular build in
maven.yml instead of in a separate workflow that rebuilt OpenNLP from
scratch on each OS.

The binary distribution is pure-Java and platform-independent, so it is
now built once (Ubuntu/JDK 17), uploaded as an artifact, and reused by the
per-OS shell-test jobs via needs/download-artifact. This removes three
redundant Maven builds per run.

actions/upload-artifact and actions/download-artifact are in the actions/*
namespace, which is automatically allowed under the ASF GitHub Actions
policy, so no INFRA allowlist change is required.
@rzo1 rzo1 force-pushed the ci-merge-shell-tests-into-build-2x branch from 7b6d64b to 48ebc84 Compare June 26, 2026 07:03
@rzo1

rzo1 commented Jun 26, 2026

Copy link
Copy Markdown
Contributor Author

Rebased onto opennlp-2.x and resolved the conflict: kept the deletion of shell-tests.yml and aligned the actions/setup-java pins in the new shell-test jobs to v5.4.0 to match the recent dependabot bump. Now mergeable. @mawiesne PTAL when you have a moment.

@mawiesne mawiesne merged commit d413401 into opennlp-2.x Jun 26, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants