-
Notifications
You must be signed in to change notification settings - Fork 272
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Publish snapshots and release artifacts to maven #20
Comments
cc: @camerski since I can't assign it |
Would like to take a stab at this. We have an issue to do this for lucene as well here. As a first step, am thinking of putting together a small cdk project to create the resources. Will then look at updating infra to publish a nightly. |
@mch2 has been prototyping some options, and it looks like we have a path forward for automatically publishing everything through Sonatype with no human intervention needed. We probably don't need a self-hosted repository. |
Updated with a simple configuration to push to our Sonatype repo with ./gradlew publish. I tested this with a locally running instance of nexus. I do not think we need [#41] anymore, closing that out. After this is added to CI, I am thinking we can extend this with a custom script in opensearch-build that builds/publishes each repo we would like to push. |
We did a successful test push here of only the opensearch repo - https://aws.oss.sonatype.org/content/repositories/snapshots/org/opensearch. @camerski is in the process of adding this to the nightly. |
See https://discuss.opendistrocommunity.dev/t/maven-repository-artifacts-for-plugin-development/6406 for another ask for this. |
Pls. also refer to opensearch-project/OpenSearch#939 |
Why only snapshots and not also the released artifacts? For plugin developers it's IMHO an absolute must have. Local maven repo does not work well with distributed CI environments etc ... So I like to ask to publish all the artifacts (releases and snapshots) to maven central like elastic did it/does it. |
Absolutely. I edited the issue accordingly. |
1.0 artifacts for core, common-utils, job-scheduler-spi, and notification are now available in maven central. Nightly snapshot builds are pushed here by this job. I am in the process of updating the README with information for repo onboarding & details on the bundle build system. Visibility into the builds can be tracked here. |
Hello Experts, Could you please make this also available in maven central: https://github.com/opensearch-project/sql/ Appreciate your help! |
from what i can see you only publish the individual JARs & co. |
Do you need it in a Maven repo, or do you need it "somewhere", and if it's the former, how do you want to use it? |
in a maven repo. we use gradle to orchestrate our builds, incl. building docker images. so the gradle build pulls in the artifacts (e.g. the ZIP files) from the maven repo and puts it into the build directory, for the Dockerfile it then looks as if the file would be in the same directory (so you can just do right now i have to manually download the ZIP file and then manually upload it to our internal maven repository, which is very cumbersome since i need to repeat this for every release of every such ZIP file (elasticsearch / opensearch, kibana / opensearch dashboards, plugins, etc.). |
is there any indication if this will make it for 1.1 next week? |
Do you mean zips @rursprung? We haven’t been publishing zips to maven, and I am still not convinced we should (maven is really for Java dependencies - who else publishes zips?), but all the Java artifacts are in AWS OSS Sonatype and will be promoted to maven central. |
sorry for not being more specific. yes, i meant the distribution ZIPs
some examples of others which also publish ZIPs on maven:
maven can be used for things other than java dependencies and is also actively used in such cases. |
I'd like to know what @nknize @mch2, @peternied and @bbarani think? |
My concerns are:
Note that OpenSearch even inherited DistributionDownloadPlugin that says that the authors didn't want to put package artifacts into maven. Finally, others can also ask for artifacts to be published into and then would we say no? |
@rursprung What about a docker image instead of a zip file, if there was a |
one approach would be the one from search guard: publish on maven and use that link everywhere as the download link
i think we had this discussion in the forum a while ago, but i'd have to dig up the exact post again if you'd want the details. |
@rursprung Another suggestion, while still leveraging an authoritative link, how about scanning https://github.com/opensearch-project/project-website/tree/main/_artifacts for opensearch-* and then into the the version description? opensearch-1.1.0-min-linux-x64.markdown:
|
I've opened #716 specifically for publishing ZIPs to maven, we can keep adding there. |
I am going to close this issue. We are publishing snapshots and release artifacts to maven with increased automation. The documentation in the repo's README is sufficiently well documenting the end-to-end process and https://github.com/opensearch-project/opensearch-build/blob/main/ONBOARDING.md describes what plugins need to do. There are separate action items on making the builds better visible. |
More process documentation: #701 |
Currently plugins check out and build OpenSearch in their CI. They should be consuming dependent JARs published into a maven repository that hosts nightly / SNAPSHOT builds and release artifacts.
The text was updated successfully, but these errors were encountered: