Browse Source

Merge pull request #12723 from overleaf/jpa-revert-node-18-upgrade

[misc] revert node 18 upgrade

GitOrigin-RevId: 752d45b015e2e8802b875b5de8ee044ba1170345
Jakob Ackermann 3 years ago
parent
commit
0b985c7a0b
45 changed files with 83 additions and 82 deletions
  1. 1 1
      libraries/access-token-encryptor/.nvmrc
  2. 1 1
      libraries/access-token-encryptor/buildscript.txt
  3. 1 1
      libraries/logger/.nvmrc
  4. 1 1
      libraries/logger/buildscript.txt
  5. 1 1
      libraries/metrics/.nvmrc
  6. 1 1
      libraries/metrics/buildscript.txt
  7. 1 1
      libraries/o-error/.nvmrc
  8. 1 1
      libraries/o-error/buildscript.txt
  9. 1 1
      libraries/object-persistor/.nvmrc
  10. 1 1
      libraries/object-persistor/buildscript.txt
  11. 1 1
      libraries/overleaf-editor-core/.nvmrc
  12. 1 1
      libraries/overleaf-editor-core/buildscript.txt
  13. 1 1
      libraries/redis-wrapper/.nvmrc
  14. 1 1
      libraries/redis-wrapper/buildscript.txt
  15. 1 1
      libraries/settings/.nvmrc
  16. 1 1
      libraries/settings/buildscript.txt
  17. 21 17
      package-lock.json
  18. 1 1
      services/chat/.nvmrc
  19. 1 1
      services/chat/Dockerfile
  20. 1 1
      services/chat/buildscript.txt
  21. 2 2
      services/chat/docker-compose.yml
  22. 1 1
      services/contacts/.nvmrc
  23. 1 1
      services/contacts/Dockerfile
  24. 1 1
      services/contacts/buildscript.txt
  25. 2 2
      services/contacts/docker-compose.yml
  26. 1 1
      services/docstore/.nvmrc
  27. 1 1
      services/docstore/Dockerfile
  28. 1 1
      services/docstore/buildscript.txt
  29. 2 2
      services/docstore/docker-compose.yml
  30. 1 1
      services/filestore/.nvmrc
  31. 1 1
      services/filestore/Dockerfile
  32. 1 1
      services/filestore/buildscript.txt
  33. 13 16
      services/filestore/test/acceptance/js/FilestoreTests.js
  34. 1 1
      services/notifications/.nvmrc
  35. 1 1
      services/notifications/Dockerfile
  36. 1 1
      services/notifications/buildscript.txt
  37. 2 2
      services/notifications/docker-compose.yml
  38. 1 1
      services/real-time/.nvmrc
  39. 1 1
      services/real-time/Dockerfile
  40. 1 1
      services/real-time/buildscript.txt
  41. 2 2
      services/real-time/docker-compose.yml
  42. 1 1
      services/track-changes/.nvmrc
  43. 1 1
      services/track-changes/Dockerfile
  44. 1 1
      services/track-changes/buildscript.txt
  45. 2 2
      services/track-changes/docker-compose.yml

+ 1 - 1
libraries/access-token-encryptor/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
libraries/access-token-encryptor/buildscript.txt

@@ -4,6 +4,6 @@ access-token-encryptor
 --env-add=
 --env-pass-through=
 --is-library=True
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=False
 --script-version=4.1.0

+ 1 - 1
libraries/logger/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
libraries/logger/buildscript.txt

@@ -4,6 +4,6 @@ logger
 --env-add=
 --env-pass-through=
 --is-library=True
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=False
 --script-version=4.1.0

+ 1 - 1
libraries/metrics/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
libraries/metrics/buildscript.txt

@@ -4,6 +4,6 @@ metrics
 --env-add=
 --env-pass-through=
 --is-library=True
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=False
 --script-version=4.1.0

+ 1 - 1
libraries/o-error/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
libraries/o-error/buildscript.txt

@@ -4,6 +4,6 @@ o-error
 --env-add=
 --env-pass-through=
 --is-library=True
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=False
 --script-version=4.1.0

+ 1 - 1
libraries/object-persistor/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
libraries/object-persistor/buildscript.txt

@@ -4,6 +4,6 @@ object-persistor
 --env-add=
 --env-pass-through=
 --is-library=True
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=False
 --script-version=4.1.0

+ 1 - 1
libraries/overleaf-editor-core/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
libraries/overleaf-editor-core/buildscript.txt

@@ -4,6 +4,6 @@ overleaf-editor-core
 --env-add=
 --env-pass-through=
 --is-library=True
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=False
 --script-version=4.1.0

+ 1 - 1
libraries/redis-wrapper/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
libraries/redis-wrapper/buildscript.txt

@@ -4,6 +4,6 @@ redis-wrapper
 --env-add=
 --env-pass-through=
 --is-library=True
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=False
 --script-version=4.1.0

+ 1 - 1
libraries/settings/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
libraries/settings/buildscript.txt

@@ -4,6 +4,6 @@ settings
 --env-add=
 --env-pass-through=
 --is-library=True
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=False
 --script-version=4.1.0

+ 21 - 17
package-lock.json

@@ -15550,13 +15550,13 @@
       "dev": true
     },
     "node_modules/eslint-plugin-mocha": {
-      "version": "10.1.0",
-      "resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-10.1.0.tgz",
-      "integrity": "sha512-xLqqWUF17llsogVOC+8C6/jvQ+4IoOREbN7ZCHuOHuD6cT5cDD4h7f2LgsZuzMAiwswWE21tO7ExaknHVDrSkw==",
+      "version": "10.0.4",
+      "resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-10.0.4.tgz",
+      "integrity": "sha512-8wzAeepVY027oBHz/TmBmUr7vhVqoC1KTFeDybFLhbaWKx+aQ7fJJVuUsqcUy+L+G+XvgQBJY+cbAf7hl5DF7Q==",
       "dev": true,
       "dependencies": {
         "eslint-utils": "^3.0.0",
-        "rambda": "^7.1.0"
+        "ramda": "^0.28.0"
       },
       "engines": {
         "node": ">=14.0.0"
@@ -27042,11 +27042,15 @@
         "node": ">=4"
       }
     },
-    "node_modules/rambda": {
-      "version": "7.5.0",
-      "resolved": "https://registry.npmjs.org/rambda/-/rambda-7.5.0.tgz",
-      "integrity": "sha512-y/M9weqWAH4iopRd7EHDEQQvpFPHj1AA3oHozE9tfITHUtTR7Z9PSlIRRG2l1GuW7sefC1cXFfIcF+cgnShdBA==",
-      "dev": true
+    "node_modules/ramda": {
+      "version": "0.28.0",
+      "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.28.0.tgz",
+      "integrity": "sha512-9QnLuG/kPVgWvMQ4aODhsBUFKOUmnbUnsSXACv+NCQZcHbeb+v8Lodp8OVxtRULN1/xOyYLLaL6npE6dMq5QTA==",
+      "dev": true,
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/ramda"
+      }
     },
     "node_modules/random-bytes": {
       "version": "1.0.0",
@@ -53035,13 +53039,13 @@
       }
     },
     "eslint-plugin-mocha": {
-      "version": "10.1.0",
-      "resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-10.1.0.tgz",
-      "integrity": "sha512-xLqqWUF17llsogVOC+8C6/jvQ+4IoOREbN7ZCHuOHuD6cT5cDD4h7f2LgsZuzMAiwswWE21tO7ExaknHVDrSkw==",
+      "version": "10.0.4",
+      "resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-10.0.4.tgz",
+      "integrity": "sha512-8wzAeepVY027oBHz/TmBmUr7vhVqoC1KTFeDybFLhbaWKx+aQ7fJJVuUsqcUy+L+G+XvgQBJY+cbAf7hl5DF7Q==",
       "dev": true,
       "requires": {
         "eslint-utils": "^3.0.0",
-        "rambda": "^7.1.0"
+        "ramda": "^0.28.0"
       },
       "dependencies": {
         "eslint-utils": {
@@ -62170,10 +62174,10 @@
       "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz",
       "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g="
     },
-    "rambda": {
-      "version": "7.5.0",
-      "resolved": "https://registry.npmjs.org/rambda/-/rambda-7.5.0.tgz",
-      "integrity": "sha512-y/M9weqWAH4iopRd7EHDEQQvpFPHj1AA3oHozE9tfITHUtTR7Z9PSlIRRG2l1GuW7sefC1cXFfIcF+cgnShdBA==",
+    "ramda": {
+      "version": "0.28.0",
+      "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.28.0.tgz",
+      "integrity": "sha512-9QnLuG/kPVgWvMQ4aODhsBUFKOUmnbUnsSXACv+NCQZcHbeb+v8Lodp8OVxtRULN1/xOyYLLaL6npE6dMq5QTA==",
       "dev": true
     },
     "random-bytes": {

+ 1 - 1
services/chat/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
services/chat/Dockerfile

@@ -2,7 +2,7 @@
 # Instead run bin/update_build_scripts from
 # https://github.com/overleaf/internal/
 
-FROM node:18.16.0 as base
+FROM node:16.17.1 as base
 
 WORKDIR /overleaf/services/chat
 

+ 1 - 1
services/chat/buildscript.txt

@@ -3,6 +3,6 @@ chat
 --docker-repos=gcr.io/overleaf-ops
 --env-add=
 --env-pass-through=
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=False
 --script-version=4.1.0

+ 2 - 2
services/chat/docker-compose.yml

@@ -6,7 +6,7 @@ version: "2.3"
 
 services:
   test_unit:
-    image: node:18.16.0
+    image: node:16.17.1
     volumes:
       - .:/overleaf/services/chat
       - ../../node_modules:/overleaf/node_modules
@@ -20,7 +20,7 @@ services:
     user: node
 
   test_acceptance:
-    image: node:18.16.0
+    image: node:16.17.1
     volumes:
       - .:/overleaf/services/chat
       - ../../node_modules:/overleaf/node_modules

+ 1 - 1
services/contacts/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
services/contacts/Dockerfile

@@ -2,7 +2,7 @@
 # Instead run bin/update_build_scripts from
 # https://github.com/overleaf/internal/
 
-FROM node:18.16.0 as base
+FROM node:16.17.1 as base
 
 WORKDIR /overleaf/services/contacts
 

+ 1 - 1
services/contacts/buildscript.txt

@@ -3,6 +3,6 @@ contacts
 --docker-repos=gcr.io/overleaf-ops
 --env-add=
 --env-pass-through=
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=False
 --script-version=4.1.0

+ 2 - 2
services/contacts/docker-compose.yml

@@ -6,7 +6,7 @@ version: "2.3"
 
 services:
   test_unit:
-    image: node:18.16.0
+    image: node:16.17.1
     volumes:
       - .:/overleaf/services/contacts
       - ../../node_modules:/overleaf/node_modules
@@ -20,7 +20,7 @@ services:
     user: node
 
   test_acceptance:
-    image: node:18.16.0
+    image: node:16.17.1
     volumes:
       - .:/overleaf/services/contacts
       - ../../node_modules:/overleaf/node_modules

+ 1 - 1
services/docstore/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
services/docstore/Dockerfile

@@ -2,7 +2,7 @@
 # Instead run bin/update_build_scripts from
 # https://github.com/overleaf/internal/
 
-FROM node:18.16.0 as base
+FROM node:16.17.1 as base
 
 WORKDIR /overleaf/services/docstore
 

+ 1 - 1
services/docstore/buildscript.txt

@@ -3,6 +3,6 @@ docstore
 --docker-repos=gcr.io/overleaf-ops
 --env-add=
 --env-pass-through=
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=True
 --script-version=4.1.0

+ 2 - 2
services/docstore/docker-compose.yml

@@ -6,7 +6,7 @@ version: "2.3"
 
 services:
   test_unit:
-    image: node:18.16.0
+    image: node:16.17.1
     volumes:
       - .:/overleaf/services/docstore
       - ../../node_modules:/overleaf/node_modules
@@ -20,7 +20,7 @@ services:
     user: node
 
   test_acceptance:
-    image: node:18.16.0
+    image: node:16.17.1
     volumes:
       - .:/overleaf/services/docstore
       - ../../node_modules:/overleaf/node_modules

+ 1 - 1
services/filestore/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
services/filestore/Dockerfile

@@ -2,7 +2,7 @@
 # Instead run bin/update_build_scripts from
 # https://github.com/overleaf/internal/
 
-FROM node:18.16.0 as base
+FROM node:16.17.1 as base
 
 WORKDIR /overleaf/services/filestore
 COPY services/filestore/install_deps.sh /overleaf/services/filestore/

+ 1 - 1
services/filestore/buildscript.txt

@@ -4,6 +4,6 @@ filestore
 --docker-repos=gcr.io/overleaf-ops
 --env-add=ENABLE_CONVERSIONS="true",USE_PROM_METRICS="true",AWS_S3_USER_FILES_BUCKET_NAME=fake_user_files,AWS_S3_TEMPLATE_FILES_BUCKET_NAME=fake_template_files,AWS_S3_PUBLIC_FILES_BUCKET_NAME=fake_public_files,GCS_USER_FILES_BUCKET_NAME=fake_userfiles,GCS_TEMPLATE_FILES_BUCKET_NAME=fake_templatefiles,GCS_PUBLIC_FILES_BUCKET_NAME=fake_publicfiles
 --env-pass-through=
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=True
 --script-version=4.1.0

+ 13 - 16
services/filestore/test/acceptance/js/FilestoreTests.js

@@ -13,9 +13,11 @@ const streamifier = require('streamifier')
 chai.use(require('chai-as-promised'))
 const { ObjectId } = require('mongodb')
 const tk = require('timekeeper')
+const ChildProcess = require('child_process')
 
 const fsWriteFile = promisify(fs.writeFile)
 const fsStat = promisify(fs.stat)
+const exec = promisify(ChildProcess.exec)
 const msleep = promisify(setTimeout)
 
 if (!process.env.AWS_ACCESS_KEY_ID) {
@@ -40,24 +42,19 @@ describe('Filestore', function () {
   async function expectNoSockets() {
     try {
       await msleep(1000)
-      const stdout = await fs.promises.readFile('/proc/net/tcp', 'utf8')
+      const { stdout } = await exec('ss -tnH')
+
       const badSockets = []
-      const lines = stdout.split('\n').map(line => line.trim().split(/\s+/))
-      const header = lines.shift()
-      if (header[4] === 'tx_queue' && header[5] === 'rx_queue') {
-        for (const socket of lines) {
-          if (
-            socket.length > 5 &&
-            socket[4] !== '00000000:00000000' && // ensure the socket queues are empty
-            !seenSockets.includes(socket)
-          ) {
-            console.log('socket still has data', socket)
-            badSockets.push(socket)
-            seenSockets.push(socket)
-          }
+      for (const socket of stdout.split('\n')) {
+        const fields = socket.split(' ').filter(part => part !== '')
+        if (
+          fields.length > 2 &&
+          parseInt(fields[1]) &&
+          !seenSockets.includes(socket)
+        ) {
+          badSockets.push(socket)
+          seenSockets.push(socket)
         }
-      } else {
-        throw new Error('unexpected format in /proc/net/tcp')
       }
 
       if (badSockets.length) {

+ 1 - 1
services/notifications/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
services/notifications/Dockerfile

@@ -2,7 +2,7 @@
 # Instead run bin/update_build_scripts from
 # https://github.com/overleaf/internal/
 
-FROM node:18.16.0 as base
+FROM node:16.17.1 as base
 
 WORKDIR /overleaf/services/notifications
 

+ 1 - 1
services/notifications/buildscript.txt

@@ -3,6 +3,6 @@ notifications
 --docker-repos=gcr.io/overleaf-ops
 --env-add=
 --env-pass-through=
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=True
 --script-version=4.1.0

+ 2 - 2
services/notifications/docker-compose.yml

@@ -6,7 +6,7 @@ version: "2.3"
 
 services:
   test_unit:
-    image: node:18.16.0
+    image: node:16.17.1
     volumes:
       - .:/overleaf/services/notifications
       - ../../node_modules:/overleaf/node_modules
@@ -20,7 +20,7 @@ services:
     user: node
 
   test_acceptance:
-    image: node:18.16.0
+    image: node:16.17.1
     volumes:
       - .:/overleaf/services/notifications
       - ../../node_modules:/overleaf/node_modules

+ 1 - 1
services/real-time/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
services/real-time/Dockerfile

@@ -2,7 +2,7 @@
 # Instead run bin/update_build_scripts from
 # https://github.com/overleaf/internal/
 
-FROM node:18.16.0 as base
+FROM node:16.17.1 as base
 
 WORKDIR /overleaf/services/real-time
 

+ 1 - 1
services/real-time/buildscript.txt

@@ -3,6 +3,6 @@ real-time
 --docker-repos=gcr.io/overleaf-ops
 --env-add=
 --env-pass-through=
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=True
 --script-version=4.1.0

+ 2 - 2
services/real-time/docker-compose.yml

@@ -6,7 +6,7 @@ version: "2.3"
 
 services:
   test_unit:
-    image: node:18.16.0
+    image: node:16.17.1
     volumes:
       - .:/overleaf/services/real-time
       - ../../node_modules:/overleaf/node_modules
@@ -20,7 +20,7 @@ services:
     user: node
 
   test_acceptance:
-    image: node:18.16.0
+    image: node:16.17.1
     volumes:
       - .:/overleaf/services/real-time
       - ../../node_modules:/overleaf/node_modules

+ 1 - 1
services/track-changes/.nvmrc

@@ -1 +1 @@
-18.16.0
+16.17.1

+ 1 - 1
services/track-changes/Dockerfile

@@ -2,7 +2,7 @@
 # Instead run bin/update_build_scripts from
 # https://github.com/overleaf/internal/
 
-FROM node:18.16.0 as base
+FROM node:16.17.1 as base
 
 WORKDIR /overleaf/services/track-changes
 

+ 1 - 1
services/track-changes/buildscript.txt

@@ -3,6 +3,6 @@ track-changes
 --docker-repos=gcr.io/overleaf-ops
 --env-add=AWS_BUCKET=bucket
 --env-pass-through=
---node-version=18.16.0
+--node-version=16.17.1
 --public-repo=True
 --script-version=4.1.0

+ 2 - 2
services/track-changes/docker-compose.yml

@@ -6,7 +6,7 @@ version: "2.3"
 
 services:
   test_unit:
-    image: node:18.16.0
+    image: node:16.17.1
     volumes:
       - .:/overleaf/services/track-changes
       - ../../node_modules:/overleaf/node_modules
@@ -20,7 +20,7 @@ services:
     user: node
 
   test_acceptance:
-    image: node:18.16.0
+    image: node:16.17.1
     volumes:
       - .:/overleaf/services/track-changes
       - ../../node_modules:/overleaf/node_modules