Skip to content

Commit dab0457

Browse files
MM-66972 Upgrade to node 24 and main dependencies with babel, webpack and jest (mattermost#34760)
* chore: upgrade to node 24 and dependencies mainly with babel, webpack and jest * fix components tests, make trial modal passed on all node 20-24 * fix cache for platform packages * updated test --------- Co-authored-by: Mattermost Build <build@mattermost.com>
1 parent 92339d0 commit dab0457

File tree

53 files changed

+6239
-11113
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+6239
-11113
lines changed

.github/actions/webapp-setup/action.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@ runs:
1515
path: |
1616
webapp/node_modules
1717
webapp/channels/node_modules
18+
webapp/platform/client/node_modules
19+
webapp/platform/components/node_modules
20+
webapp/platform/types/node_modules
1821
key: node-modules-${{ runner.os }}-${{ hashFiles('webapp/package-lock.json') }}
1922
- name: ci/cache-platform-builds
2023
uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0

.github/workflows/api.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
- name: Checkout code
2121
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
2222

23-
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
23+
- uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
2424
with:
2525
node-version-file: .nvmrc
2626
cache: "npm"

.github/workflows/e2e-tests-ci-template.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ jobs:
133133
fetch-depth: 0
134134
- name: ci/setup-node
135135
if: "${{ inputs.run_preflight_checks }}"
136-
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
136+
uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
137137
id: setup_node
138138
with:
139139
node-version-file: ".nvmrc"
@@ -164,7 +164,7 @@ jobs:
164164
fetch-depth: 0
165165
- name: ci/setup-node
166166
if: "${{ inputs.run_preflight_checks }}"
167-
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
167+
uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
168168
id: setup_node
169169
with:
170170
node-version-file: ".nvmrc"
@@ -246,7 +246,7 @@ jobs:
246246
ref: ${{ inputs.commit_sha }}
247247
fetch-depth: 0
248248
- name: ci/setup-node
249-
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
249+
uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
250250
id: setup_node
251251
with:
252252
node-version-file: ".nvmrc"
@@ -333,7 +333,7 @@ jobs:
333333
ln -sfn /usr/local/opt/docker-compose/bin/docker-compose ~/.docker/cli-plugins/docker-compose
334334
sudo ln -sf $HOME/.colima/default/docker.sock /var/run/docker.sock
335335
- name: ci/setup-node
336-
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
336+
uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
337337
id: setup_node
338338
with:
339339
node-version-file: ".nvmrc"
@@ -412,7 +412,7 @@ jobs:
412412
e2e-tests/${{ inputs.TEST }}/results/
413413
- name: ci/setup-node
414414
if: "${{ inputs.enable_reporting }}"
415-
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
415+
uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
416416
id: setup_node
417417
with:
418418
node-version-file: ".nvmrc"

.github/workflows/server-ci.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,6 +282,12 @@ jobs:
282282
steps:
283283
- name: Checkout mattermost project
284284
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
285+
- name: ci/setup-node
286+
uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
287+
with:
288+
node-version-file: ".nvmrc"
289+
cache: "npm"
290+
cache-dependency-path: "webapp/package-lock.json"
285291
- name: Run setup-go-work
286292
run: make setup-go-work
287293
- name: Build

.nvmrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
20.11
1+
24.11

e2e-tests/.ci/server.generate.sh

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -260,7 +260,7 @@ $(if mme2e_is_token_in_list "webhook-interactions" "$ENABLED_DOCKER_SERVICES"; t
260260
# shellcheck disable=SC2016
261261
echo '
262262
webhook-interactions:
263-
image: mattermostdevelopment/mirrored-node:${NODE_VERSION_REQUIRED}
263+
image: node:${NODE_VERSION_REQUIRED}
264264
command: sh -c "npm install --global --legacy-peer-deps && exec node webhook_serve.js"
265265
healthcheck:
266266
test: ["CMD", "curl", "-s", "-o/dev/null", "127.0.0.1:3000"]
@@ -275,11 +275,21 @@ $(if mme2e_is_token_in_list "webhook-interactions" "$ENABLED_DOCKER_SERVICES"; t
275275
fi)
276276
277277
$(if mme2e_is_token_in_list "playwright" "$ENABLED_DOCKER_SERVICES"; then
278+
# shellcheck disable=SC2016
278279
echo '
279280
playwright:
280281
image: mcr.microsoft.com/playwright:v1.57.0-noble
281282
entrypoint: ["/bin/bash", "-c"]
282-
command: ["until [ -f /var/run/mm_terminate ]; do sleep 5; done"]
283+
command:
284+
- |
285+
# Install Node.js based on .nvmrc
286+
NODE_VERSION=$$(cat /mattermost/.nvmrc)
287+
echo "Installing Node.js $${NODE_VERSION}..."
288+
curl -fsSL https://deb.nodesource.com/setup_$${NODE_VERSION%%.*}.x | bash -
289+
apt-get install -y nodejs
290+
echo "Node.js version: $$(node --version)"
291+
# Wait for termination signal
292+
until [ -f /var/run/mm_terminate ]; do sleep 5; done
283293
env_file:
284294
- "./.env.playwright"
285295
environment:

e2e-tests/playwright/package-lock.json

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

webapp/.npmrc

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1 @@
11
save-exact=true
2-
engine-strict=true

webapp/channels/.github/workflows/performance-benchmarks.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,9 @@ jobs:
2323
- name: Check out web app
2424
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
2525

26-
- uses: actions/setup-node@cdca7365b2dadb8aad0a33bc7601856ffabcc48e # v4.3.0
26+
- uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
2727
with:
28-
node-version: 16.10.0
28+
node-version-file: ".nvmrc"
2929

3030
- name: Download and install Cypress
3131
uses: cypress-io/github-action@108b8684ae52e735ff7891524cbffbcd4be5b19f # v6.7.16

webapp/channels/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -149,8 +149,8 @@
149149
"imagemin-mozjpeg": "9.0.0",
150150
"jest": "30.1.3",
151151
"jest-canvas-mock": "2.5.0",
152-
"jest-cli": "29.7.0",
153-
"jest-environment-jsdom": "29.7.0",
152+
"jest-cli": "30.1.3",
153+
"jest-environment-jsdom": "30.1.0",
154154
"jest-junit": "16.0.0",
155155
"jest-watch-typeahead": "3.0.1",
156156
"nock": "13.2.8",

0 commit comments

Comments
 (0)