Update deps; improve build

This commit is contained in:
Christoph Wiechert
2020-04-14 10:59:34 +02:00
parent 3176cd7194
commit c493225321
6 changed files with 705 additions and 536 deletions

2
.nvmrc
View File

@@ -1 +1 @@
7.4 v12

View File

@@ -1,4 +1,4 @@
FROM node:10-alpine FROM node:12-alpine
ENV PSITRANSFER_UPLOAD_DIR=/data \ ENV PSITRANSFER_UPLOAD_DIR=/data \
NODE_ENV=production NODE_ENV=production
@@ -7,27 +7,26 @@ MAINTAINER Christoph Wiechert <wio@psitrax.de>
WORKDIR /app WORKDIR /app
ADD *.js package.json README.md /app/ ADD *.js package.json package-lock.json README.md /app/
ADD lib /app/lib ADD lib /app/lib
ADD app /app/app ADD app /app/app
ADD public /app/public ADD public /app/public
# Rebuild the frontend apps # Rebuild the frontend apps
RUN cd app && \ RUN cd app && \
NODE_ENV=dev npm install --quiet 1>/dev/null && \ NODE_ENV=dev npm ci && \
npm run build && \ npm run build -- --no-info && \
cd .. && rm -rf app cd .. && \
mkdir /data && \
# Install backend dependencies
RUN mkdir /data && \
chown node /data && \ chown node /data && \
npm install --quiet 1>/dev/null npm ci && \
rm -rf app
EXPOSE 3000 EXPOSE 3000
VOLUME ["/data"] VOLUME ["/data"]
USER node USER node
HEALTHCHECK CMD wget -O /dev/null -q http://localhost:3000 # HEALTHCHECK CMD wget -O /dev/null -q http://localhost:3000
CMD ["node", "app.js"] CMD ["node", "app.js"]

1189
app/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -30,7 +30,7 @@
"pug-plain-loader": "^1.0.0", "pug-plain-loader": "^1.0.0",
"vue-loader": "^15.4.2", "vue-loader": "^15.4.2",
"vue-template-compiler": "^2.5.21", "vue-template-compiler": "^2.5.21",
"webpack": "^4.27.1", "webpack": "^4.42.1",
"webpack-bundle-analyzer": "^3.3.2", "webpack-bundle-analyzer": "^3.3.2",
"webpack-cli": "^3.1.2", "webpack-cli": "^3.1.2",
"webpack-dev-server": "^3.7.1" "webpack-dev-server": "^3.7.1"

26
package-lock.json generated
View File

@@ -131,7 +131,7 @@
}, },
"readable-stream": { "readable-stream": {
"version": "2.3.6", "version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"requires": { "requires": {
"core-util-is": "~1.0.0", "core-util-is": "~1.0.0",
@@ -145,7 +145,7 @@
}, },
"string_decoder": { "string_decoder": {
"version": "1.1.1", "version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"requires": { "requires": {
"safe-buffer": "~5.1.0" "safe-buffer": "~5.1.0"
@@ -397,9 +397,9 @@
} }
}, },
"crypto-js": { "crypto-js": {
"version": "3.2.1", "version": "3.3.0",
"resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-3.2.1.tgz", "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-3.3.0.tgz",
"integrity": "sha512-fIEXOyiXnmPbPk2+q8t97VYDSo8naqvI+2v0AJeLraQzhuL/GZ2qgcRpEadVQ7r8pXwBOHVjwOdyAXYYb3DWiQ==" "integrity": "sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q=="
}, },
"debug": { "debug": {
"version": "4.1.1", "version": "4.1.1",
@@ -800,9 +800,9 @@
} }
}, },
"lodash": { "lodash": {
"version": "4.17.14", "version": "4.17.15",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.14.tgz", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
"integrity": "sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw==" "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A=="
}, },
"lodash.assign": { "lodash.assign": {
"version": "4.2.0", "version": "4.2.0",
@@ -912,9 +912,9 @@
} }
}, },
"minimist": { "minimist": {
"version": "1.2.0", "version": "1.2.5",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw=="
}, },
"morgan": { "morgan": {
"version": "1.9.1", "version": "1.9.1",
@@ -1254,7 +1254,7 @@
}, },
"readable-stream": { "readable-stream": {
"version": "2.3.6", "version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"requires": { "requires": {
"core-util-is": "~1.0.0", "core-util-is": "~1.0.0",
@@ -1268,7 +1268,7 @@
}, },
"string_decoder": { "string_decoder": {
"version": "1.1.1", "version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"requires": { "requires": {
"safe-buffer": "~5.1.0" "safe-buffer": "~5.1.0"

View File

@@ -11,7 +11,7 @@ NAME=$(git describe --exact-match --tags $COMMIT 2>/dev/null || echo $COMMIT)
echo "### Building frontend apps" echo "### Building frontend apps"
echo "======================================================" echo "======================================================"
cd $DIR/../app cd $DIR/../app
npm install npm ci
npm run build npm run build
@@ -29,6 +29,7 @@ tar -czf _releases/psitransfer-$NAME.tar.gz --transform "s~^~psitransfer-$NAME/~
app.js \ app.js \
config.js \ config.js \
package.json \ package.json \
package-lock.json \
docs \ docs \
lib \ lib \
public public