-
Notifications
You must be signed in to change notification settings - Fork 13.9k
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
fix(frontend/docker, ci): fix borked Docker build due to Lerna v8 uplift #29725
fix(frontend/docker, ci): fix borked Docker build due to Lerna v8 uplift #29725
Conversation
Signed-off-by: hainenber <dotronghai96@gmail.com>
Signed-off-by: hainenber <dotronghai96@gmail.com>
@@ -26,7 +26,7 @@ fi | |||
if [ "$BUILD_SUPERSET_FRONTEND_IN_DOCKER" = "true" ]; then | |||
cd /app/superset-frontend | |||
npm install -f --no-optional --global webpack webpack-cli | |||
npm install -f --no-optional | |||
npm install -f |
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.
@mistercrunch I saw this flag was added previously but unsure the context. I believe there's a historical reason for it? 👀
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 did some git archeology and it looks like --no-optional goes back to #10766 (2020) and there's not a clear explanation. I vote going vanilla and doing a very simple npm install
instead of those 2 lines. Webpack packages should install as its just a devDependencies
, and they'll install normally as long as we don't specify --production, which we don't want to do here.
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.
tagging @eschutho as I believe she ran in an issue similar to the one you're fixing here.
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.
Hmm... looks like @craig-rueda added that a looooong time ago. I'm not sure if there are any consequences to its removal ¯\_(ツ)_/¯
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.
eek... duplicated effort. That's what I get for revisiting an open tab without refreshing.
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.
@rusackas I really think it's ok to remove this --no-optional
as it's non-standard and in this context would only apply BUILD_SUPERSET_FRONTEND_IN_DOCKER" = "true"
which really should align with other build context (if you're running a dev env outside docker for instance).
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.
This lgtm. I'll remove the pinned optional dependencies in my pr.
@eschutho I'm not able to reproduce your CI issue as this PR's https://github.com/apache/superset/actions/runs/10120546422/job/27990411018?pr=29725 |
My vote is to replace those two lines with a single, simple |
The webpack install is not necessary, simplifying further here #29779 |
@supersetbot label 4.1 |
…ift (apache#29725) Signed-off-by: hainenber <dotronghai96@gmail.com> (cherry picked from commit 8891f04)
@supersetbot unlabel 4.1 |
fix(frontend/docker, ci): fix borked Docker build due to Lerna v8 uplift
SUMMARY
Closes #29658
Remove
--no-optional
indocker-frontend.sh
to allow installing@nx
optional dependencies which is necessary for Lerna v8Also upgrading
prop-types
to next minor version to assess reproducibility of issue raised in PR #29723BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
TESTING INSTRUCTIONS
ADDITIONAL INFORMATION