From 2f1cd3d73fd3071488070f4ad00c0943d8e4f7be Mon Sep 17 00:00:00 2001 From: Andrew Silluron Date: Tue, 22 Jun 2021 16:06:30 -0600 Subject: [PATCH 1/5] use default api path --- config.js => api/config.js | 0 server.js => api/index.js | 9 +++++- manifest.js => api/manifest.js | 58 +++++++++++++++++----------------- index.js | 8 ----- package.json | 4 +-- vercel.json | 6 ---- 6 files changed, 39 insertions(+), 46 deletions(-) rename config.js => api/config.js (100%) rename server.js => api/index.js (69%) rename manifest.js => api/manifest.js (77%) delete mode 100644 index.js diff --git a/config.js b/api/config.js similarity index 100% rename from config.js rename to api/config.js diff --git a/server.js b/api/index.js similarity index 69% rename from server.js rename to api/index.js index e114965c..a9983757 100644 --- a/server.js +++ b/api/index.js @@ -1,4 +1,11 @@ -var composer = require('./index'); +var Glue = require('glue'); +var Manifest = require('./manifest'); + +var composeOptions = { + relativeTo: __dirname +}; + +const composer = Glue.compose.bind(Glue, Manifest.get('/'), composeOptions); composer(function (err, server) { if (err) { diff --git a/manifest.js b/api/manifest.js similarity index 77% rename from manifest.js rename to api/manifest.js index a4c217e7..ec6559f0 100644 --- a/manifest.js +++ b/api/manifest.js @@ -78,7 +78,7 @@ var manifest = { hbs: 'handlebars' }, relativeTo: __dirname, - path: './server/web', + path: '../server/web', layout: true, helpersPath: 'templates/helpers', partialsPath: 'templates/partials', @@ -109,7 +109,7 @@ var manifest = { { plugin: 'hapi-auth-cookie' }, { plugin: { - register: './server/web/auth/strategies', + register: '../server/web/auth/strategies', options: { session: { password: config.get('/auth/session/pass'), @@ -128,7 +128,7 @@ var manifest = { }, { plugin: { - register: './server/lib/db', + register: '../server/lib/db', options: { host: config.get('/mysql/host'), port: config.get('/mysql/port'), @@ -141,7 +141,7 @@ var manifest = { }, { plugin: { - register: './server/repositories/browserscope', + register: '../server/repositories/browserscope', options: { api_key: config.get('/browserscope'), scheme: config.get('/scheme'), @@ -151,7 +151,7 @@ var manifest = { }, { plugin: { - register: './server/lib/cache', + register: '../server/lib/cache', options: { host: config.get('/cache/host'), port: config.get('/cache/port'), @@ -160,30 +160,30 @@ var manifest = { } } }, - { plugin: './server/repositories/comments' }, - { plugin: './server/repositories/pages' }, - { plugin: './server/repositories/tests' }, - { plugin: './server/services/comments' }, - { plugin: './server/services/pages' }, - { plugin: './server/api/json' }, - { plugin: './server/web/auth/github' }, - { plugin: './server/web/browse' }, - { plugin: './server/web/comment' }, - { plugin: './server/web/contributors' }, - { plugin: './server/web/errors' }, - { plugin: './server/web/faq' }, - { plugin: './server/web/health' }, - { plugin: './server/web/home' }, - { plugin: './server/web/popular' }, - { plugin: './server/web/public' }, - { plugin: './server/web/redirects' }, - { plugin: './server/web/search' }, - { plugin: './server/web/sitemap/xml' }, - { plugin: './server/web/sponsor' }, - { plugin: './server/web/test' }, - { plugin: './server/web/testimonials' }, - { plugin: './server/web/edit' }, - { plugin: './server/web/delete' } + { plugin: '../server/repositories/comments' }, + { plugin: '../server/repositories/pages' }, + { plugin: '../server/repositories/tests' }, + { plugin: '../server/services/comments' }, + { plugin: '../server/services/pages' }, + { plugin: '../server/api/json' }, + { plugin: '../server/web/auth/github' }, + { plugin: '../server/web/browse' }, + { plugin: '../server/web/comment' }, + { plugin: '../server/web/contributors' }, + { plugin: '../server/web/errors' }, + { plugin: '../server/web/faq' }, + { plugin: '../server/web/health' }, + { plugin: '../server/web/home' }, + { plugin: '../server/web/popular' }, + { plugin: '../server/web/public' }, + { plugin: '../server/web/redirects' }, + { plugin: '../server/web/search' }, + { plugin: '../server/web/sitemap/xml' }, + { plugin: '../server/web/sponsor' }, + { plugin: '../server/web/test' }, + { plugin: '../server/web/testimonials' }, + { plugin: '../server/web/edit' }, + { plugin: '../server/web/delete' } ] }; diff --git a/index.js b/index.js deleted file mode 100644 index 3459b562..00000000 --- a/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var Glue = require('glue'); -var Manifest = require('./manifest'); - -var composeOptions = { - relativeTo: __dirname -}; - -module.exports = Glue.compose.bind(Glue, Manifest.get('/'), composeOptions); diff --git a/package.json b/package.json index 31b12039..826c55d4 100644 --- a/package.json +++ b/package.json @@ -8,10 +8,10 @@ "scripts": { "build": "gulp", "lint": "lab -d -L", - "start": "node server.js", + "start": "node ./api/index.js", "test": "lab -I __core-js_shared__,__grim__ -t 100 -c -L -r lcov -o lcov.info -r console -o stdout -r html -o coverage.html test/unit", "test-e2e": "lab -L -m 30000 -M 10000 test/e2e", - "watch": "nodemon -e js,hbs server.js" + "watch": "nodemon -e js,hbs ./api/index.js" }, "repository": { "type": "git", diff --git a/vercel.json b/vercel.json index 98eab47c..e47ce83a 100644 --- a/vercel.json +++ b/vercel.json @@ -8,12 +8,6 @@ "use": "@vercel/node" } ], - "routes": [ - { - "src": "/(.*)", - "dest": "server.js" - } - ], "alias": ["jsperf.com"], "env": { "SCHEME": "https", From 5319be27df94c8f613be18dc411f02b1df027d5e Mon Sep 17 00:00:00 2001 From: Andrew Silluron Date: Tue, 22 Jun 2021 16:09:46 -0600 Subject: [PATCH 2/5] Add rewrite as prescribed by vercel guide --- vercel.json | 1 + 1 file changed, 1 insertion(+) diff --git a/vercel.json b/vercel.json index e47ce83a..769fe110 100644 --- a/vercel.json +++ b/vercel.json @@ -2,6 +2,7 @@ "name": "jsPerf", "version": 2, "public": true, + "rewrites": [{ "source": "/api/(.*)", "destination": "/api" }], "builds": [ { "src": "./server.js", From 2aed2938fbb5151327a9d10329a03e0d6e4fd918 Mon Sep 17 00:00:00 2001 From: Andrew Silluron Date: Tue, 22 Jun 2021 16:13:40 -0600 Subject: [PATCH 3/5] try routes only --- vercel.json | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/vercel.json b/vercel.json index 769fe110..4670e29f 100644 --- a/vercel.json +++ b/vercel.json @@ -2,13 +2,18 @@ "name": "jsPerf", "version": 2, "public": true, - "rewrites": [{ "source": "/api/(.*)", "destination": "/api" }], "builds": [ { - "src": "./server.js", + "src": "api/index.js", "use": "@vercel/node" } ], + "routes": [ + { + "src": "/(.*)", + "dest": "api/index.js" + } + ], "alias": ["jsperf.com"], "env": { "SCHEME": "https", From d0dfc08d0e87abc5bb25703a8c4b88efd1ca8066 Mon Sep 17 00:00:00 2001 From: Andrew Silluron Date: Tue, 22 Jun 2021 16:16:20 -0600 Subject: [PATCH 4/5] add hapi-qs --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 826c55d4..8c9baf8b 100644 --- a/package.json +++ b/package.json @@ -48,7 +48,7 @@ "handlebars": "^4.0.12", "hapi": "^16.6.2", "hapi-auth-cookie": "7.0.0", - "hapi-qs": "^1.1.2", + "hapi-qs": "^2.0.1", "highlight.js": "^9.8.0", "hoek": "^5.0.4", "inert": "^4.2.1", From ae97d3c76b607253ec19cd7c1296850e5104e972 Mon Sep 17 00:00:00 2001 From: Andrew Silluron Date: Tue, 22 Jun 2021 16:21:51 -0600 Subject: [PATCH 5/5] whoops, wrong verson of hapi-qs --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 8c9baf8b..46c48680 100644 --- a/package.json +++ b/package.json @@ -48,7 +48,7 @@ "handlebars": "^4.0.12", "hapi": "^16.6.2", "hapi-auth-cookie": "7.0.0", - "hapi-qs": "^2.0.1", + "hapi-qs": "1.1.3", "highlight.js": "^9.8.0", "hoek": "^5.0.4", "inert": "^4.2.1",