opensearch-project/common-utils

Ensure compatibility check readiness

Closed this issue · 2 comments

Coming from opensearch-project/opensearch-devops#114 (comment)

Overview

In order to detect the breaking changes between OpenSearch (core/min) and plugins, we recently onboarded a compatibility check gradle task with OpenSearch. See the pull request.
The task is dependent on publishToMavenLocal task (that publishes the core engine artifacts to maven local). It then clones the plugins' repository in temporary directory and runs ./gradlew assemble.

Action Items

In order to avoid false positives and false negatives, we need to make sure the tasks in below checklist are complete:

  • The build.gradle file in this repository uses mavenLocal() as the first entry in repositories() section. This will ensure that when core/min dependencies are published to maven local, gradle looks at maven local first and gets the required core/min dependencies rather than fetching from snapshots or maven central resulting in false checks.
  • ./gradlew assemble task passes for the plugin build. If the task itself is broken, checking compatitibility is irrelevant as it will always fail.

Please close this issue once the above checklist is complete.

Thanks!

@praveensameneni @lezzago can you please provide an update?

Maven local is the first repo: https://github.com/opensearch-project/common-utils/blob/main/build.gradle#L37

./gradlew assemble passes