Skip to content
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 full distribution to maven #2069

Open
rursprung opened this issue May 2, 2022 · 5 comments
Open

publish full distribution to maven #2069

rursprung opened this issue May 2, 2022 · 5 comments
Labels
enhancement New Enhancement

Comments

@rursprung
Copy link
Contributor

rursprung commented May 2, 2022

Is your feature request related to a problem? Please describe

currently, automated builds (e.g. of in-house docker images) don't have a good way to automatically pull in the .tar.gz file of the full distribution: the artifact is just offered via HTTPS, the link has to be known.

Describe the solution you'd like

the full distribution artifact (e.g. https://artifacts.opensearch.org/releases/bundle/opensearch/1.3.1/opensearch-1.3.1-linux-x64.tar.gz) should be published to maven.

that way, automated build systems can be used to pull in the artifact w/o having to know an exact URL or requiring direct internet access (it can then go via an in-house maven server which serves as a proxy and also caches the artifact for later re-use).

since maven artifacts can be accessed using HTTP(S) this also means that this could - theoretically - even be used as the primary download location in the future (i.e. replacing the current download paths for (new) artifacts).

Describe alternatives you've considered

any form of using HTTP(S) fails for several reasons:

  • the link isn't known / would have to be stored in the build (not an absolute show-stopper, but definitely not something nice if you can also have the maven approach where you just know the artifact name & version)
  • the build server might not have internet access
  • there's no built-in caching support, i.e. automated builds would always hit the public download rather than re-using a locally cached version (be that cached on the build server or some intermediate proxy)

there would be workarounds, e.g. having a dedicated proxy server for this, but that'd be a huge overkill and would require this to be in place everywhere rather than just having the artifacts deployed to maven once.

Additional context

Acceptance Criteria

Allow the generate tar file (both arm64 and x64) to be published to maven repo.

@prudhvigodithi
Copy link
Collaborator

[Triage] We will update more about this issue once this meta issue to publish zips to maven repo is taken care.

@prudhvigodithi prudhvigodithi removed the untriaged Issues that have not yet been triaged label May 6, 2022
@rursprung
Copy link
Contributor Author

FYI: it seems that someone (atlassian?) at some point already uploaded some tar fields of some releases (lots of "some" in this sentence 😆) to the atlassian maven repo: https://mvnrepository.com/artifact/org.opensearch.distribution

once this is done properly centrally then those other usages can go away.

@prudhvigodithi
Copy link
Collaborator

prudhvigodithi commented Jul 12, 2022

Hey @rursprung just weighing the effort with the requirement, the distributions can be downloaded using fixed URLs as follows https://artifacts.opensearch.org/releases/bundle/opensearch//opensearch--linux-x64.tar.gz
For work in progress(min distribution snapshots)
https://artifacts.opensearch.org/snapshots/core/opensearch/-SNAPSHOT/opensearch-min--SNAPSHOT-linux-x64-latest.tar.gz
For in house you can always use hosted repo to check in the tar files, or a proxy repo with raw format that should support caching and proxy it to [https://artifacts.opensearch.org/releases/bundle/opensearch/], so now you can download with your own in house URL/1.3.1/opensearch-1.3.1-linux-x64.tar.gz.
@bbarani @peterzhuamazon

@rursprung
Copy link
Contributor Author

@prudhvigodithi sorry for missing to reply here! i wasn't aware of the raw format, however it does then still lack the maven metadata (pom.xml) and it only seems to exist on nexus (we're using something else).

so i still think that having these files published to maven would be a big benefit. i've now seen it with the plugins, it makes my life a lot easier if i can just bump the version number and be done instead of having to download the archive and then go through the hassle of getting it published on our in-house artifactory.

@rursprung
Copy link
Contributor Author

note: once #99 is fully implemented the no-jdk version of the distribution should be published to maven as part of this step here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New Enhancement
Projects
None yet
Development

No branches or pull requests

2 participants