Skip to content

Publish the ppl-rest-spi snapshot artifact - #5676

Open
ahkcs wants to merge 1 commit into
opensearch-project:mainfrom
ahkcs:fix/publish-ppl-rest-spi
Open

Publish the ppl-rest-spi snapshot artifact#5676
ahkcs wants to merge 1 commit into
opensearch-project:mainfrom
ahkcs:fix/publish-ppl-rest-spi

Conversation

@ahkcs

@ahkcs ahkcs commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

Description

#5656 added the ppl-rest-spi module and made opensearch depend on it (opensearch/build.gradle: api project(':ppl-rest-spi')). The published unified-query-opensearch POM therefore carries a compile-scope dependency on org.opensearch.query:ppl-rest-spi — but that artifact was never published.

The publish workflow runs only:

./gradlew publishUnifiedQueryPublicationToSnapshotsRepository

which matches publications named unifiedQuery. ppl-rest-spi deliberately names its publication restSpi so it keeps the plain ppl-rest-spi artifactId rather than the unified-query- prefix (see the comment in ppl-rest-spi/build.gradle), so its publish task never runs.

Result: every external consumer of unified-query-opensearch — opensearch-spark, opensearch-cli, and the OpenSearch sandbox — fails to resolve dependencies.

ppl-rest-spi/build.gradle already configures the publication and the Snapshots repository correctly, so this just runs its publish task alongside the existing one. No build-logic change.

Verification

The dangling reference, in the currently published POM (unified-query-opensearch-3.8.0.0-20260804.211640-79.pom):

<dependency>
  <groupId>org.opensearch.query</groupId>
  <artifactId>ppl-rest-spi</artifactId>
  <version>3.8.0.0-SNAPSHOT</version>
  <scope>compile</scope>
</dependency>

And the artifact is absent from every configured repository:

Repository ppl-rest-spi metadata
ci.opensearch.org/ci/dbc/snapshots/maven 404
ci.opensearch.org/maven2 404
repo.maven.apache.org/maven2 404

Confirmed the task produces exactly the coordinates the resolver searches for, via :ppl-rest-spi:publishRestSpiPublicationToMavenLocal:

org/opensearch/query/ppl-rest-spi/3.8.0.0-SNAPSHOT/ppl-rest-spi-3.8.0.0-SNAPSHOT.pom
org/opensearch/query/ppl-rest-spi/3.8.0.0-SNAPSHOT/ppl-rest-spi-3.8.0.0-SNAPSHOT.jar
org/opensearch/query/ppl-rest-spi/3.8.0.0-SNAPSHOT/ppl-rest-spi-3.8.0.0-SNAPSHOT.module

Downstream failure this fixes

sandbox-check in opensearch-project/OpenSearch (e.g. run 30951657273, failing in under 2 minutes at dependency resolution):

Could not determine the dependencies of task
':sandbox:plugins:test-ppl-frontend:forbiddenApisMain'.
> Could not resolve all dependencies for configuration
  ':sandbox:plugins:test-ppl-frontend:runtimeClasspath'
   > Could not find org.opensearch.query:ppl-rest-spi:3.8.0.0-SNAPSHOT
     Required by:
       test-ppl-frontend > unified-query-ppl > unified-query-protocol
                         > unified-query-opensearch

Note this needs a merge to main to take effect, since the publish workflow only triggers on push to a release branch.

Check List

  • Commits are signed per the DCO using --signoff.
  • New functionality includes testing — not applicable; CI workflow change, verified via publishRestSpiPublicationToMavenLocal.
  • Public documentation issue/PR created — not applicable; no user-facing change.

opensearch-project#5656 added the ppl-rest-spi module and made opensearch depend on it with
`api project(':ppl-rest-spi')`, so the published unified-query-opensearch
POM now carries a compile-scope dependency on
org.opensearch.query:ppl-rest-spi. That artifact was never published: the
publish workflow runs only
publishUnifiedQueryPublicationToSnapshotsRepository, which matches
publications named `unifiedQuery`, and ppl-rest-spi deliberately names its
publication `restSpi` to keep the plain artifactId instead of the
`unified-query-` prefix.

Every external consumer of unified-query-opensearch therefore fails to
resolve. The OpenSearch sandbox check is the visible casualty:

  Could not resolve all dependencies for configuration
  ':sandbox:plugins:test-ppl-frontend:runtimeClasspath'
  > Could not find org.opensearch.query:ppl-rest-spi:3.8.0.0-SNAPSHOT

ppl-rest-spi/build.gradle already configures the publication and the
Snapshots repository correctly, so run its publish task alongside the
existing one.

Signed-off-by: Kai Huang <ahkcs@amazon.com>
@github-actions

github-actions Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

🧪 No relevant tests
🔒 No security concerns identified
✅ No TODO sections
🔀 No multiple PR themes
⚡ No major issues detected

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

infrastructure Changes to infrastructure, testing, CI/CD, pipelines, etc.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants