From: Fiete Ostkamp Date: Fri, 6 Mar 2026 14:06:36 +0000 (+0100) Subject: [CCSDK] install node via nvm X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F23%2F143523%2F1;p=ci-management.git [CCSDK] install node via nvm Issue-ID: CCSDK-4176 Change-Id: I833ed730de4e21d770113bfe41bf50c4ec27175a Signed-off-by: Fiete Ostkamp --- diff --git a/jjb/ccsdk/cds-playwright-e2e.sh b/jjb/ccsdk/cds-playwright-e2e.sh index 0783870cd..33684bc56 100755 --- a/jjb/ccsdk/cds-playwright-e2e.sh +++ b/jjb/ccsdk/cds-playwright-e2e.sh @@ -11,33 +11,52 @@ set -e -o pipefail echo "---> cds-playwright-e2e.sh" -# ── Install Node.js 18 LTS ──────────────────────────────────────────────────── -echo "---> Installing Node.js 18" -sudo apt-get update -qq -sudo apt-get install -y -qq nodejs npm > /dev/null 2>&1 -sudo npm install -g n > /dev/null 2>&1 -sudo n 18 > /dev/null 2>&1 -hash -r +# ── Install Node.js via nvm (no sudo/apt) ─────────────────────────────────── +NODE_VERSION="${NODE_VERSION:-18}" +NVM_DIR="${NVM_DIR:-$HOME/.nvm}" +export NVM_DIR + +echo "---> Preparing Node.js ${NODE_VERSION} with nvm" + +if [[ ! -s "$NVM_DIR/nvm.sh" ]]; then + echo "---> Installing nvm" + curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash +fi + +# shellcheck source=/dev/null disable=SC1090 +source "$NVM_DIR/nvm.sh" + +nvm install "$NODE_VERSION" +nvm use "$NODE_VERSION" + echo "Node.js version: $(node --version)" echo "npm version: $(npm --version)" +npm_install() { + if [[ -f package-lock.json ]]; then + npm ci + else + npm install + fi +} + # ── Install dependencies for each component ─────────────────────────────────── echo "---> Installing server (LoopBack BFF) dependencies" cd "$WORKSPACE/cds-ui/server" -npm install +npm_install echo "---> Installing designer-client (Angular) dependencies" cd "$WORKSPACE/cds-ui/designer-client" -npm install +npm_install echo "---> Installing e2e-playwright dependencies" cd "$WORKSPACE/cds-ui/e2e-playwright" -npm install +npm_install -# ── Install Playwright browser (Firefox, matching the config) ────────────────── -echo "---> Installing Playwright Firefox browser with system dependencies" -npx playwright install --with-deps firefox +# ── Install Playwright browser (Firefox, matching the config) ──────────────── +echo "---> Installing Playwright Firefox browser" +npx playwright install firefox # ── Run the tests ────────────────────────────────────────────────────────────── echo "---> Running Playwright e2e tests (CI=true)"