chore: upgrade node to 24.x LTS (#13004)
Upgrade node to `24.12` LTS FIxes https://github.com/chatwoot/chatwoot/issues/12546 Fixes https://linear.app/chatwoot/issue/CW-5707/nodejs-23-reached-eol
This commit is contained in:
@@ -76,7 +76,7 @@ jobs:
|
|||||||
bundle install
|
bundle install
|
||||||
|
|
||||||
- node/install:
|
- node/install:
|
||||||
node-version: '23.7'
|
node-version: '24.12'
|
||||||
- node/install-pnpm
|
- node/install-pnpm
|
||||||
- node/install-packages:
|
- node/install-packages:
|
||||||
pkg-manager: pnpm
|
pkg-manager: pnpm
|
||||||
@@ -117,7 +117,7 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- checkout
|
- checkout
|
||||||
- node/install:
|
- node/install:
|
||||||
node-version: '23.7'
|
node-version: '24.12'
|
||||||
- node/install-pnpm
|
- node/install-pnpm
|
||||||
- node/install-packages:
|
- node/install-packages:
|
||||||
pkg-manager: pnpm
|
pkg-manager: pnpm
|
||||||
@@ -148,7 +148,7 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- checkout
|
- checkout
|
||||||
- node/install:
|
- node/install:
|
||||||
node-version: '23.7'
|
node-version: '24.12'
|
||||||
- node/install-pnpm
|
- node/install-pnpm
|
||||||
- node/install-packages:
|
- node/install-packages:
|
||||||
pkg-manager: pnpm
|
pkg-manager: pnpm
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ services:
|
|||||||
dockerfile: .devcontainer/Dockerfile.base
|
dockerfile: .devcontainer/Dockerfile.base
|
||||||
args:
|
args:
|
||||||
VARIANT: 'ubuntu-22.04'
|
VARIANT: 'ubuntu-22.04'
|
||||||
NODE_VERSION: '23.7.0'
|
NODE_VERSION: '24.12.0'
|
||||||
RUBY_VERSION: '3.4.4'
|
RUBY_VERSION: '3.4.4'
|
||||||
# On Linux, you may need to update USER_UID and USER_GID below if not your local UID is not 1000.
|
# On Linux, you may need to update USER_UID and USER_GID below if not your local UID is not 1000.
|
||||||
USER_UID: '1000'
|
USER_UID: '1000'
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ services:
|
|||||||
dockerfile: .devcontainer/Dockerfile
|
dockerfile: .devcontainer/Dockerfile
|
||||||
args:
|
args:
|
||||||
VARIANT: 'ubuntu-22.04'
|
VARIANT: 'ubuntu-22.04'
|
||||||
NODE_VERSION: '23.7.0'
|
NODE_VERSION: '24.12.0'
|
||||||
RUBY_VERSION: '3.4.4'
|
RUBY_VERSION: '3.4.4'
|
||||||
# On Linux, you may need to update USER_UID and USER_GID below if not your local UID is not 1000.
|
# On Linux, you may need to update USER_UID and USER_GID below if not your local UID is not 1000.
|
||||||
USER_UID: '1000'
|
USER_UID: '1000'
|
||||||
|
|||||||
2
.github/workflows/frontend-fe.yml
vendored
2
.github/workflows/frontend-fe.yml
vendored
@@ -26,7 +26,7 @@ jobs:
|
|||||||
|
|
||||||
- uses: actions/setup-node@v4
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version: 23
|
node-version: 24
|
||||||
cache: 'pnpm'
|
cache: 'pnpm'
|
||||||
|
|
||||||
- name: Install pnpm dependencies
|
- name: Install pnpm dependencies
|
||||||
|
|||||||
6
.github/workflows/run_foss_spec.yml
vendored
6
.github/workflows/run_foss_spec.yml
vendored
@@ -28,7 +28,7 @@ jobs:
|
|||||||
- uses: pnpm/action-setup@v4
|
- uses: pnpm/action-setup@v4
|
||||||
- uses: actions/setup-node@v4
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version: 23
|
node-version: 24
|
||||||
cache: 'pnpm'
|
cache: 'pnpm'
|
||||||
- name: Install pnpm dependencies
|
- name: Install pnpm dependencies
|
||||||
run: pnpm i
|
run: pnpm i
|
||||||
@@ -43,7 +43,7 @@ jobs:
|
|||||||
- uses: pnpm/action-setup@v4
|
- uses: pnpm/action-setup@v4
|
||||||
- uses: actions/setup-node@v4
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version: 23
|
node-version: 24
|
||||||
cache: 'pnpm'
|
cache: 'pnpm'
|
||||||
- name: Install pnpm dependencies
|
- name: Install pnpm dependencies
|
||||||
run: pnpm i
|
run: pnpm i
|
||||||
@@ -94,7 +94,7 @@ jobs:
|
|||||||
|
|
||||||
- uses: actions/setup-node@v4
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version: 23
|
node-version: 24
|
||||||
cache: 'pnpm'
|
cache: 'pnpm'
|
||||||
|
|
||||||
- name: Install pnpm dependencies
|
- name: Install pnpm dependencies
|
||||||
|
|||||||
2
.github/workflows/size-limit.yml
vendored
2
.github/workflows/size-limit.yml
vendored
@@ -28,7 +28,7 @@ jobs:
|
|||||||
|
|
||||||
- uses: actions/setup-node@v4
|
- uses: actions/setup-node@v4
|
||||||
with:
|
with:
|
||||||
node-version: 23
|
node-version: 24
|
||||||
cache: 'pnpm'
|
cache: 'pnpm'
|
||||||
|
|
||||||
- name: pnpm
|
- name: pnpm
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
3.4.3
|
3.5.0
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
# Description: Install and manage a Chatwoot installation.
|
# Description: Install and manage a Chatwoot installation.
|
||||||
# OS: Ubuntu 20.04 LTS, 22.04 LTS, 24.04 LTS
|
# OS: Ubuntu 20.04 LTS, 22.04 LTS, 24.04 LTS
|
||||||
# Script Version: 3.4.3
|
# Script Version: 3.5.0
|
||||||
# Run this script as root
|
# Run this script as root
|
||||||
|
|
||||||
set -eu -o errexit -o pipefail -o noclobber -o nounset
|
set -eu -o errexit -o pipefail -o noclobber -o nounset
|
||||||
@@ -19,7 +19,7 @@ fi
|
|||||||
# option --output/-o requires 1 argument
|
# option --output/-o requires 1 argument
|
||||||
LONGOPTS=console,debug,help,install,Install:,logs:,restart,ssl,upgrade,Upgrade:,webserver,version,web-only,worker-only,convert:
|
LONGOPTS=console,debug,help,install,Install:,logs:,restart,ssl,upgrade,Upgrade:,webserver,version,web-only,worker-only,convert:
|
||||||
OPTIONS=cdhiI:l:rsuU:wvWK
|
OPTIONS=cdhiI:l:rsuU:wvWK
|
||||||
CWCTL_VERSION="3.4.3"
|
CWCTL_VERSION="3.5.0"
|
||||||
pg_pass=$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 15 ; echo '')
|
pg_pass=$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 15 ; echo '')
|
||||||
CHATWOOT_HUB_URL="https://hub.2.chatwoot.com/events"
|
CHATWOOT_HUB_URL="https://hub.2.chatwoot.com/events"
|
||||||
|
|
||||||
@@ -209,11 +209,11 @@ EOF
|
|||||||
function install_dependencies() {
|
function install_dependencies() {
|
||||||
apt-get update && apt-get upgrade -y
|
apt-get update && apt-get upgrade -y
|
||||||
apt-get install -y curl
|
apt-get install -y curl
|
||||||
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg
|
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor --yes -o /usr/share/keyrings/redis-archive-keyring.gpg
|
||||||
echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
|
echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
|
||||||
mkdir -p /etc/apt/keyrings
|
mkdir -p /etc/apt/keyrings
|
||||||
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
|
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor --yes -o /etc/apt/keyrings/nodesource.gpg
|
||||||
NODE_MAJOR=23
|
NODE_MAJOR=24
|
||||||
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
|
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
|
||||||
echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg 16" > /etc/apt/sources.list.d/pgdg.list
|
echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg 16" > /etc/apt/sources.list.d/pgdg.list
|
||||||
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
|
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
|
||||||
@@ -882,7 +882,7 @@ function upgrade_redis() {
|
|||||||
|
|
||||||
echo "Upgrading Redis to v7+ for Rails 7 support(Chatwoot v2.17+)"
|
echo "Upgrading Redis to v7+ for Rails 7 support(Chatwoot v2.17+)"
|
||||||
|
|
||||||
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg
|
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor --yes -o /usr/share/keyrings/redis-archive-keyring.gpg
|
||||||
echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
|
echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
|
||||||
apt-get update -y
|
apt-get update -y
|
||||||
apt-get upgrade redis-server -y
|
apt-get upgrade redis-server -y
|
||||||
@@ -908,15 +908,15 @@ function upgrade_node() {
|
|||||||
# Parse major version number
|
# Parse major version number
|
||||||
major_version=$(echo "$current_version" | cut -d. -f1)
|
major_version=$(echo "$current_version" | cut -d. -f1)
|
||||||
|
|
||||||
if [ "$major_version" -ge 23 ]; then
|
if [ "$major_version" -ge 24 ]; then
|
||||||
echo "Node.js is already version $current_version (>= 23.x). Skipping Node.js upgrade."
|
echo "Node.js is already version $current_version (>= 24.x). Skipping Node.js upgrade."
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Upgrading Node.js version to v23.x"
|
echo "Upgrading Node.js version to v24.x"
|
||||||
mkdir -p /etc/apt/keyrings
|
mkdir -p /etc/apt/keyrings
|
||||||
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
|
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor --yes -o /etc/apt/keyrings/nodesource.gpg
|
||||||
NODE_MAJOR=23
|
NODE_MAJOR=24
|
||||||
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
|
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
|
||||||
|
|
||||||
apt-get update
|
apt-get update
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
# pre-build stage
|
# pre-build stage
|
||||||
FROM node:23-alpine as node
|
FROM node:24-alpine as node
|
||||||
FROM ruby:3.4.4-alpine3.21 AS pre-builder
|
FROM ruby:3.4.4-alpine3.21 AS pre-builder
|
||||||
|
|
||||||
ARG NODE_VERSION="23.7.0"
|
ARG NODE_VERSION="24.12.0"
|
||||||
ARG PNPM_VERSION="10.2.0"
|
ARG PNPM_VERSION="10.2.0"
|
||||||
ENV NODE_VERSION=${NODE_VERSION}
|
ENV NODE_VERSION=${NODE_VERSION}
|
||||||
ENV PNPM_VERSION=${PNPM_VERSION}
|
ENV PNPM_VERSION=${PNPM_VERSION}
|
||||||
@@ -98,7 +98,7 @@ RUN rm -rf /gems/ruby/3.4.0/cache/*.gem \
|
|||||||
# final build stage
|
# final build stage
|
||||||
FROM ruby:3.4.4-alpine3.21
|
FROM ruby:3.4.4-alpine3.21
|
||||||
|
|
||||||
ARG NODE_VERSION="23.7.0"
|
ARG NODE_VERSION="24.12.0"
|
||||||
ARG PNPM_VERSION="10.2.0"
|
ARG PNPM_VERSION="10.2.0"
|
||||||
ENV NODE_VERSION=${NODE_VERSION}
|
ENV NODE_VERSION=${NODE_VERSION}
|
||||||
ENV PNPM_VERSION=${PNPM_VERSION}
|
ENV PNPM_VERSION=${PNPM_VERSION}
|
||||||
|
|||||||
@@ -148,7 +148,7 @@
|
|||||||
"vitest": "3.0.5"
|
"vitest": "3.0.5"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": "23.x",
|
"node": "24.x",
|
||||||
"pnpm": "10.x"
|
"pnpm": "10.x"
|
||||||
},
|
},
|
||||||
"husky": {
|
"husky": {
|
||||||
|
|||||||
Reference in New Issue
Block a user