Fix qa-frontend-node:latest CI build
What does this MR do and why?
Due to changes in node v17+ to work with OpenSSL v3.0, MD4/MD5 hash algorithms no longer can be used out-of-the-box with Webpack (https://github.com/webpack/webpack/issues/14532).
We can't switch to another hash algorithm like SHA256 until we upgrade
to Webpack v5 (#350120 (closed)),
but we can make the latest node version work by specifying
--openssl-legacy-provider
in NODE_OPTIONS
.
We use a separate build script (webpack-prod-node-latest
) because older versions of node will fail if --openssl-legacy-provider
is used.
Closes #346110 (closed)
How to set up and validate locally
- Install the latest Node version (e.g.
nvm install 17.3.1
) - Run
yarn run webpack-prod-node-latest
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Edited by Stan Hu