-
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
[Bug]: OpenSearch Dashboards needs to rebuild core every time (make --component work) #606
Comments
Subtask: #680 |
Had a offline sync with kavilla, thinking the right solution should be letting plugin owner figure out what modules are required from OSD for plugin build. The current situation is we have many plugins, and each has a different dependency hierarchy with OSD modules. (And some plugin have import module with relative path pointing to OSD src folder). This makes it quite hard to develop a fit-all solution from OSD side. Prefer to hand this work to plugin owner to achieve. |
…ilding the OpenSearch-Dashboards component. Also create the load_dashboard_from_cache function for plugin build to reuse OpenSearch-Dashboards source code. This way allows individual plugin to build independently, opensearch-project#606 Signed-off-by: Tengda He <tengh@amazon.com>
…ilding the OpenSearch-Dashboards component. Also create the load_dashboard_from_cache function for plugin build to reuse OpenSearch-Dashboards source code. This way allows individual plugin to build independently, opensearch-project#606 Signed-off-by: Tengda He <tengh@amazon.com>
…ilding the OpenSearch-Dashboards component. Also create the load_dashboard_from_cache function for plugin build to reuse OpenSearch-Dashboards source code. This way allows individual plugin to build independently, opensearch-project#606 Signed-off-by: Tengda He <tengh@amazon.com>
…ilding the OpenSearch-Dashboards component. Also create the load_dashboard_from_cache function for plugin build to reuse OpenSearch-Dashboards source code. This way allows individual plugin to build independently, opensearch-project#606 Signed-off-by: Tengda He <tengh@amazon.com>
…ilding the OpenSearch-Dashboards component. Also create the load_dashboard_from_cache function for plugin build to reuse OpenSearch-Dashboards source code. This way allows individual plugin to build independently, opensearch-project#606 Signed-off-by: Tengda He <tengh@amazon.com>
We were thinking about to solve this issue we will allow for multiple components to be passed so it builds together |
#1278 provides a way to get it run. |
One way might be to use local-npm (similar to maven local). Build dashboards and push to local-npm (one time) and then build the components on top of it. I have not tested this myself but can be one of the option. |
Since we already implement the --component on both build and jenkins I think this can be closed. |
This problem is about developers, not Jenkins, see description of the issue. I don't think it should be closed. |
@seanneumann @kavilla This needs to be prioritized to improve the build generation velocity. Can you please prioritize this as soon as possible? |
Hey @bbarani. Taking a look with the team now. |
Right now it does re-use the build from OpenSearch Dashboards in the default script:
I don't think this will improve build generation velocity besides if we only just want to build a singular component which based on Peter's comment it is supported on Jenkins. Solving this would allow for developers locally to push out if they wanted to build out Is there a case that this impacting @bbarani? |
@kavilla As far as I know, this is needed for granular build generation process work that is described here. @peterzhuamazon, you mentioned that we can overcome this blocker by Bootstrapping the core, is that a long term solution? |
The bootstrapping also causes the core build to fail if any of the plugins fail to build as well
|
I found a couple of solutions in this article https://medium.com/@debshish.pal/publish-a-npm-package-locally-for-testing-9a00015eb9fd which can be used to publish opensearch-dashboards as a local npm package rather than bootstraping everytime (if I understand if correctly). Please take a look and see if this can be helpful. Also not sure if @Tengda-He is still working on this issue. If not please assign a new assignee. Removing the assignee for now. Thanks! |
@kavilla @AMoo-Miki @ashwin-pc Wondering if you have any inputs for this issue? |
I am not sure I understand the problem enough or the historical context of this issue. |
Describe the bug
OpenSearch dashboards requires to rebuild core every single time to build any of the components, which makes it very slow to debug component build problems.
To reproduce
Succeeds for all components.
Fails with
Expected behavior
We could adopt something similar to how OpenSearch builds into
~/.m2
for dependencies with npm local, so that the output from the dashboards core could be published and preserved.The text was updated successfully, but these errors were encountered: