Skip to content

Commit e033336

Browse files
authored
feat(mojaloop/#3441): nodejs upgrade (#252)
* feat: nodejs upgrade * npm lint * fix test runner * chore(snapshot): 12.1.0-snapshot.0 * remove unneeded ci step * chore(snapshot): 12.1.0-snapshot.1 * remove unneeded ci step 2
1 parent e5e5893 commit e033336

File tree

8 files changed

+8873
-6556
lines changed

8 files changed

+8873
-6556
lines changed

.circleci/config.yml

Lines changed: 206 additions & 199 deletions
Large diffs are not rendered by default.

.nvmrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
16.15.0
1+
18.17.1

Dockerfile

Lines changed: 34 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,49 @@
1-
FROM node:16.15.0-alpine as builder
1+
# Arguments
2+
ARG NODE_VERSION=lts-alpine
3+
4+
# NOTE: Ensure you set NODE_VERSION Build Argument as follows...
5+
#
6+
# export NODE_VERSION="$(cat .nvmrc)-alpine" \
7+
# docker build \
8+
# --build-arg NODE_VERSION=$NODE_VERSION \
9+
# -t mojaloop/central-event-processor:local \
10+
# . \
11+
#
12+
13+
# Build Image
14+
FROM node:${NODE_VERSION} as builder
15+
USER root
16+
217
WORKDIR /opt/app
318

419
RUN apk --no-cache add git
5-
RUN apk add --no-cache -t build-dependencies make gcc g++ python3 libtool libressl-dev openssl-dev autoconf automake \
6-
&& cd $(npm root -g)/npm \
7-
&& npm config set unsafe-perm true \
8-
&& npm install -g node-gyp
20+
RUN apk add --no-cache -t build-dependencies make gcc g++ python3 libtool openssl-dev autoconf automake bash \
21+
&& cd $(npm root -g)/npm
22+
23+
COPY package.json package-lock.json* /opt/app/
24+
25+
RUN npm ci
926

10-
COPY package*.json /opt/app/
27+
RUN apk del build-dependencies
1128

12-
RUN npm ci --production
29+
COPY src /opt/app/src
30+
COPY config /opt/app/config
31+
32+
FROM node:${NODE_VERSION}
1333

14-
FROM node:16.15.0-alpine
1534
WORKDIR /opt/app
1635

1736
# Create empty log file & link stdout to the application log file
1837
RUN mkdir ./logs && touch ./logs/combined.log
38+
# Links combined to stdout
1939
RUN ln -sf /dev/stdout ./logs/combined.log
2040

21-
# Create a non-root user: ml-user
22-
RUN adduser -D ml-user
23-
USER ml-user
24-
25-
COPY --chown=ml-user --from=builder /opt/app .
41+
# Create a non-root user:app-user
42+
RUN adduser -D app-user
43+
USER app-user
2644

27-
COPY src /opt/app/src
28-
COPY config /opt/app/config
45+
COPY --chown=app-user --from=builder /opt/app .
46+
RUN npm prune --production
2947

3048
EXPOSE 3080
31-
CMD ["npm", "run", "start"]
49+
CMD ["npm", "start"]

audit-ci.jsonc

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,19 @@
2626
"GHSA-8h2f-7jc4-7m3m",
2727
"GHSA-3vjf-82ff-p4r3",
2828
"GHSA-gmv4-r438-p67f",
29-
"GHSA-p9pc-299p-vxgp"
29+
"GHSA-p9pc-299p-vxgp",
30+
// third party dependencies
31+
"GHSA-67hx-6x53-jw92",
32+
"GHSA-gxpj-cx7g-858c",
33+
"GHSA-6xrf-q977-5vgc",
34+
"GHSA-8cf7-32gw-wr33",
35+
"GHSA-hjrf-2m68-5959",
36+
"GHSA-qwph-4952-7xr6",
37+
"GHSA-7fh5-64p2-3v2j",
38+
"GHSA-hrpp-h998-j3pp",
39+
"GHSA-p8p7-x288-28g6",
40+
"GHSA-c2qf-rxjj-qqgw",
41+
"GHSA-72xf-g2v4-qvf3",
42+
"GHSA-g694-m8vq-gv9h"
3043
]
3144
}

0 commit comments

Comments
 (0)