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

Add missing no jdk distributions #4722

Merged

Conversation

rursprung
Copy link
Contributor

@rursprung rursprung commented Oct 10, 2022

Description

please see the individual commit messages for details.

Issues Resolved

part of opensearch-project/opensearch-build#99

Check List

  • New functionality includes testing.
    • All tests pass
  • New functionality has been documented.
    • New functionality has javadoc added
  • Commits are signed per the DCO using --signoff
  • Commit changes are listed out in CHANGELOG.md file (See: Changelog)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@rursprung rursprung force-pushed the add-missing-no-jdk-distributions branch from a09e3f3 to a7d24c3 Compare October 10, 2022 09:14
@rursprung rursprung marked this pull request as ready for review October 10, 2022 09:14
@rursprung rursprung requested review from a team and reta as code owners October 10, 2022 09:14
@rursprung
Copy link
Contributor Author

CC @dblock

@github-actions
Copy link
Contributor

Gradle Check (Jenkins) Run Completed with:

@codecov-commenter
Copy link

Codecov Report

Merging #4722 (a09e3f3) into main (77cff55) will increase coverage by 0.03%.
The diff coverage is n/a.

❗ Current head a09e3f3 differs from pull request most recent head a7d24c3. Consider uploading reports for the commit a7d24c3 to get more accurate results

@@             Coverage Diff              @@
##               main    #4722      +/-   ##
============================================
+ Coverage     70.74%   70.77%   +0.03%     
+ Complexity    57592    57580      -12     
============================================
  Files          4660     4660              
  Lines        276466   276466              
  Branches      40285    40285              
============================================
+ Hits         195583   195678      +95     
+ Misses        64597    64511      -86     
+ Partials      16286    16277       -9     
Impacted Files Coverage Δ
.../org/opensearch/client/indices/AnalyzeRequest.java 27.00% <0.00%> (-49.00%) ⬇️
...opensearch/persistent/PersistentTasksExecutor.java 22.22% <0.00%> (-44.45%) ⬇️
.../search/aggregations/pipeline/HoltLinearModel.java 20.33% <0.00%> (-42.38%) ⬇️
...cluster/coordination/PublishClusterStateStats.java 33.33% <0.00%> (-37.51%) ⬇️
...ndex/query/functionscore/DecayFunctionBuilder.java 33.45% <0.00%> (-32.37%) ⬇️
...uery/functionscore/LinearDecayFunctionBuilder.java 32.00% <0.00%> (-28.00%) ⬇️
...rc/main/java/org/opensearch/ingest/IngestInfo.java 51.72% <0.00%> (-27.59%) ⬇️
...earch/aggregations/bucket/terms/heuristic/GND.java 55.00% <0.00%> (-25.00%) ⬇️
...nsearch/index/shard/IndexingOperationListener.java 63.93% <0.00%> (-22.96%) ⬇️
...tions/bucket/terms/ParsedSignificantLongTerms.java 73.68% <0.00%> (-21.06%) ⬇️
... and 466 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@github-actions
Copy link
Contributor

Gradle Check (Jenkins) Run Completed with:

@rursprung
Copy link
Contributor Author

Gradle Check (Jenkins) Run Completed with:

* **RESULT:** UNSTABLE ❌

* **URL:** https://build.ci.opensearch.org/job/gradle-check/4240/

* **CommitID:** [a7d24c3](https://github.com/opensearch-project/OpenSearch/commit/a7d24c36bee75043e01f4faaedcf2f917c312333)

this seems to be an unrelated false-reject :(
https://build.ci.opensearch.org/job/gradle-check/4240/testReport/junit/org.opensearch.cluster.routing.allocation.decider/DiskThresholdDeciderIT/testRestoreSnapshotAllocationDoesNotExceedWatermark/

@reta
Copy link
Collaborator

reta commented Oct 11, 2022

@github-actions
Copy link
Contributor

Gradle Check (Jenkins) Run Completed with:

@dblock
Copy link
Member

dblock commented Oct 11, 2022

@rursprung rebase and we're good to go, thanks!

@rursprung rursprung force-pushed the add-missing-no-jdk-distributions branch from a7d24c3 to 23c7357 Compare October 13, 2022 07:02
@github-actions
Copy link
Contributor

Gradle Check (Jenkins) Run Completed with:

@rursprung
Copy link
Contributor Author

Gradle Check (Jenkins) Run Completed with:

* **RESULT:** FAILURE ❌

* **URL:** https://build.ci.opensearch.org/job/gradle-check/4558/

* **CommitID:** [23c7357](https://github.com/opensearch-project/OpenSearch/commit/23c735788c032c0c5ade98cb30a7fdb32121a6f0)

seems to be yet again an unrelated false reject 😞

by convention all supported platforms should also have a gradle target
to produce a no-jdk build and that target should be called
`no-jdk-[platform]`.

this is a first step in the path to publishing the no-jdk distributions
as part of the release, as there are use-cases where a specific JDK
should be used instead of the packaged one and it's cleaner to use a
small distribution which doesn't bring along an unneeded JDK (the JDK
greatly increases the resulting distribution since).

note that i failed to rename the `linux-s390x` target, it seems that
there's too much generic build code out there which tries to stitch
together that name and then fails if it doesn't find it.

this is part of opensearch-build#99.

Signed-off-by: Ralph Ursprung <[email protected]>
this is primarily to document the JDK & No JDK setup (to codify it for
the future), however the README can be extended in the future to
document more information which is currently hidden away only somewhere
in the code.

Signed-off-by: Ralph Ursprung <[email protected]>
@rursprung rursprung force-pushed the add-missing-no-jdk-distributions branch from 23c7357 to 45ae1ba Compare October 24, 2022 11:19
@github-actions
Copy link
Contributor

Gradle Check (Jenkins) Run Completed with:

@rursprung
Copy link
Contributor Author

@dblock: this should now be ready to be merged: no false-reject, no merge conflict (for the next few hours, anyway 😖), already approved. it'd be great if you could hit that merge button 🙂 (or enable auto-merge in case there's a merge conflict again until then, that way it'd go in the next time i rebase). thanks!

@reta reta added backport 2.x Backport to 2.x branch backport 2.3 Backports to 2.3 branch v3.0.0 Issues and PRs related to version 3.0.0 labels Oct 24, 2022
@reta reta merged commit dfa1118 into opensearch-project:main Oct 24, 2022
@opensearch-trigger-bot
Copy link
Contributor

The backport to 2.x failed:

The process '/usr/bin/git' failed with exit code 1

To backport manually, run these commands in your terminal:

# Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add .worktrees/backport-2.x 2.x
# Navigate to the new working tree
cd .worktrees/backport-2.x
# Create a new branch
git switch --create backport/backport-4722-to-2.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 dfa1118eee84e2f54a304ba917885f98a571b23c
# Push it to GitHub
git push --set-upstream origin backport/backport-4722-to-2.x
# Go back to the original working tree
cd ../..
# Delete the working tree
git worktree remove .worktrees/backport-2.x

Then, create a pull request where the base branch is 2.x and the compare/head branch is backport/backport-4722-to-2.x.

@opensearch-trigger-bot
Copy link
Contributor

The backport to 2.3 failed:

The process '/usr/bin/git' failed with exit code 1

To backport manually, run these commands in your terminal:

# Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add .worktrees/backport-2.3 2.3
# Navigate to the new working tree
cd .worktrees/backport-2.3
# Create a new branch
git switch --create backport/backport-4722-to-2.3
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 dfa1118eee84e2f54a304ba917885f98a571b23c
# Push it to GitHub
git push --set-upstream origin backport/backport-4722-to-2.3
# Go back to the original working tree
cd ../..
# Delete the working tree
git worktree remove .worktrees/backport-2.3

Then, create a pull request where the base branch is 2.3 and the compare/head branch is backport/backport-4722-to-2.3.

@rursprung
Copy link
Contributor Author

thanks for merging, @reta! should i take care of the backports or will you do this?

@rursprung rursprung deleted the add-missing-no-jdk-distributions branch October 24, 2022 12:29
@reta
Copy link
Collaborator

reta commented Oct 24, 2022

thanks for merging, @reta! should i take care of the backports or will you do this?

Thanks to you @rursprung , if you could take care of backports - would be great, but I am ready to back you up here if you need

rursprung added a commit to rursprung/OpenSearch that referenced this pull request Oct 24, 2022
* add missing no-jdk gradle targets for distributions

by convention all supported platforms should also have a gradle target
to produce a no-jdk build and that target should be called
`no-jdk-[platform]`.

this is a first step in the path to publishing the no-jdk distributions
as part of the release, as there are use-cases where a specific JDK
should be used instead of the packaged one and it's cleaner to use a
small distribution which doesn't bring along an unneeded JDK (the JDK
greatly increases the resulting distribution since).

note that i failed to rename the `linux-s390x` target, it seems that
there's too much generic build code out there which tries to stitch
together that name and then fails if it doesn't find it.

this is part of opensearch-build#99.

Signed-off-by: Ralph Ursprung <[email protected]>

* add basic README for `:distribution`

this is primarily to document the JDK & No JDK setup (to codify it for
the future), however the README can be extended in the future to
document more information which is currently hidden away only somewhere
in the code.

Signed-off-by: Ralph Ursprung <[email protected]>

Signed-off-by: Ralph Ursprung <[email protected]>
(cherry picked from commit dfa1118)
@rursprung
Copy link
Contributor Author

i've done the backport to 2.x, see #4884. i don't think that this is needed for 2.3.x as it's not something that needs to land in a patch release. WDYT?

@reta
Copy link
Collaborator

reta commented Oct 24, 2022

i've done the backport to 2.x, see #4884. i don't think that this is needed for 2.3.x as it's not something that needs to land in a patch release. WDYT?

Thanks @rursprung, yeah, for features we don't have hard "must backport" requirement, I think this is just nice one to have and easy to backport, I can do that on your behalf.

@rursprung
Copy link
Contributor Author

i've done the backport to 2.x, see #4884. i don't think that this is needed for 2.3.x as it's not something that needs to land in a patch release. WDYT?

Thanks @rursprung, yeah, for features we don't have hard "must backport" requirement, I think this is just nice one to have and easy to backport, I can do that on your behalf.

i think it muddies the water if we backport features to bugfix branches - these should IMHO contain as few commits as possible (i.e. only the actual bugfixes). otherwise it's also not proper semver if all features are also backported to a minor release (then why even bother having 2.x and 2.3 as separate branches if they both get the same set of commits?)

@reta
Copy link
Collaborator

reta commented Oct 24, 2022

i've done the backport to 2.x, see #4884. i don't think that this is needed for 2.3.x as it's not something that needs to land in a patch release. WDYT?

Thanks @rursprung, yeah, for features we don't have hard "must backport" requirement, I think this is just nice one to have and easy to backport, I can do that on your behalf.

i think it muddies the water if we backport features to bugfix branches - these should IMHO contain as few commits as possible (i.e. only the actual bugfixes). otherwise it's also not proper semver if all features are also backported to a minor release (then why even bother having 2.x and 2.3 as separate branches if they both get the same set of commits?)

No, we don't backport everything for sure (bugfix are exceptions), but let say we would need to release next 2.3.x patch (as of now, this is the latest releasable branch, 2.x is the next release which will happen in the future), in this case we could just bundle this (and potentially other backported features) for the users to benefit from (many are reluctant to go with major updates for a while, so delievering features in the patch releases is the way to go here).

reta pushed a commit that referenced this pull request Oct 24, 2022
* add missing no-jdk gradle targets for distributions

by convention all supported platforms should also have a gradle target
to produce a no-jdk build and that target should be called
`no-jdk-[platform]`.

this is a first step in the path to publishing the no-jdk distributions
as part of the release, as there are use-cases where a specific JDK
should be used instead of the packaged one and it's cleaner to use a
small distribution which doesn't bring along an unneeded JDK (the JDK
greatly increases the resulting distribution since).

note that i failed to rename the `linux-s390x` target, it seems that
there's too much generic build code out there which tries to stitch
together that name and then fails if it doesn't find it.

this is part of opensearch-build#99.

Signed-off-by: Ralph Ursprung <[email protected]>

* add basic README for `:distribution`

this is primarily to document the JDK & No JDK setup (to codify it for
the future), however the README can be extended in the future to
document more information which is currently hidden away only somewhere
in the code.

Signed-off-by: Ralph Ursprung <[email protected]>

Signed-off-by: Ralph Ursprung <[email protected]>
(cherry picked from commit dfa1118)
ashking94 pushed a commit to ashking94/OpenSearch that referenced this pull request Nov 7, 2022
* add missing no-jdk gradle targets for distributions

by convention all supported platforms should also have a gradle target
to produce a no-jdk build and that target should be called
`no-jdk-[platform]`.

this is a first step in the path to publishing the no-jdk distributions
as part of the release, as there are use-cases where a specific JDK
should be used instead of the packaged one and it's cleaner to use a
small distribution which doesn't bring along an unneeded JDK (the JDK
greatly increases the resulting distribution since).

note that i failed to rename the `linux-s390x` target, it seems that
there's too much generic build code out there which tries to stitch
together that name and then fails if it doesn't find it.

this is part of opensearch-build#99.

Signed-off-by: Ralph Ursprung <[email protected]>

* add basic README for `:distribution`

this is primarily to document the JDK & No JDK setup (to codify it for
the future), however the README can be extended in the future to
document more information which is currently hidden away only somewhere
in the code.

Signed-off-by: Ralph Ursprung <[email protected]>

Signed-off-by: Ralph Ursprung <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport 2.x Backport to 2.x branch backport 2.3 Backports to 2.3 branch v3.0.0 Issues and PRs related to version 3.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants