-
Notifications
You must be signed in to change notification settings - Fork 277
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
Enable patch releases by fetching some components from existing distribution. #789
Conversation
ad14bd8
to
c1f48bd
Compare
c1f48bd
to
21cd158
Compare
21cd158
to
25e0584
Compare
@saratvemulapalli @peternied Bump, this is ready for review please. |
Signed-off-by: dblock <dblock@amazon.com>
Signed-off-by: dblock <dblock@amazon.com>
Signed-off-by: dblock <dblock@amazon.com>
Signed-off-by: dblock <dblock@amazon.com>
99a4ae3
to
6b38d06
Compare
Codecov Report
@@ Coverage Diff @@
## main #789 +/- ##
==========================================
- Coverage 91.60% 91.18% -0.42%
==========================================
Files 81 87 +6
Lines 2250 2370 +120
==========================================
+ Hits 2061 2161 +100
- Misses 189 209 +20
Continue to review full report at Codecov.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
General feedback, deeper inspection later
- 1.1.0 | ||
components: | ||
- name: OpenSearch | ||
dist: https://ci.opensearch.org/ci/dbc/builds/1.1.0/405 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The path will need to be inferred/discovered which will have been broken with the recent url restructuring that only impacted the 1.2.0+ builds. Should we add parameters to help the build system construct the correct path to the manifest?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Either in a separate PR or maybe we should just copy the manifest with bad URLs to a corrected copy in S3 and use that instead.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The manifest is oriented around the components of with a platform / architecture, do we need another kind of manifest that is oriented around a releases artifacts. Note, we can move this out to another PR
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't see this as necessary. This is a bundle (assembly/distribution) manifest that can now include references to another bundle, and picks up components with matching platform/architecture.
def build(self, build_recorder): | ||
pass | ||
|
||
def export_artifacts(self, build_recorder): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
export
doesn't seem to align with the action what about import
or download
+ "_artifacts"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thought about this. The "from source" code exports those artifacts, while the "from distribution" code downloads and exports those artifacts. They should really be spit up into download_artifacts
and export_artifacts
. I have another PR with more changes along those lines if that's OK?
- 1.1.0 | ||
components: | ||
- name: OpenSearch | ||
dist: https://ci.opensearch.org/ci/dbc/builds/1.1.0/405 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The manifest is oriented around the components of with a platform / architecture, do we need another kind of manifest that is oriented around a releases artifacts. Note, we can move this out to another PR
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lots of changes.
Did a pass, overall it looks good to me.
Signed-off-by: dblock dblock@amazon.com
Description
This allows build to produce a mixed distribution with multiple versions of components, e.g. 1.1.0 + some components built from source = 1.1.1.
In the provided example this build fails trying to build
anomaly-detection
, which expects OpenSearch core 1.1.1, but we're giving it 1.1.0. The builds for those patched components will need to pickup the released dependency from maven explicitly.Issues Resolved
Closes #373.
Check List
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.