From 1c47c8ce2cb91d22178e54bb3fa1c2aaa0cdf8b7 Mon Sep 17 00:00:00 2001 From: Alex Holliday Date: Fri, 25 Jul 2025 15:33:48 -0700 Subject: [PATCH] move to src --- docker/dev/server.Dockerfile | 2 +- docker/dist-arm/server.Dockerfile | 2 +- docker/dist-mono/server.Dockerfile | 2 +- docker/dist/build_images.sh | 4 +- docker/dist/server.Dockerfile | 2 +- docker/prod/server.Dockerfile | 2 +- docker/staging/server.Dockerfile | 2 +- server/index.js | 10 ++-- server/nodemon.json | 4 +- server/package.json | 2 +- server/server.js | 1 - server/{ => src}/app.js | 0 server/{ => src}/config/controllers.js | 0 server/{ => src}/config/database.js | 0 server/{ => src}/config/routes.js | 0 server/{ => src}/config/services.js | 0 .../controllers/announcementsController.js | 0 .../{ => src}/controllers/authController.js | 0 .../{ => src}/controllers/baseController.js | 0 .../{ => src}/controllers/checkController.js | 0 .../{ => src}/controllers/controllerUtils.js | 0 .../controllers/diagnosticController.js | 0 .../{ => src}/controllers/inviteController.js | 0 server/{ => src}/controllers/logController.js | 0 .../maintenanceWindowController.js | 0 .../controllers/monitorController.js | 0 .../controllers/notificationController.js | 0 .../{ => src}/controllers/queueController.js | 0 .../controllers/settingsController.js | 0 .../controllers/statusPageController.js | 0 server/{ => src}/db/models/AppSettings.js | 0 server/{ => src}/db/models/Check.js | 0 server/{ => src}/db/models/HardwareCheck.js | 0 server/{ => src}/db/models/InviteToken.js | 0 .../{ => src}/db/models/MaintenanceWindow.js | 0 server/{ => src}/db/models/Monitor.js | 0 server/{ => src}/db/models/MonitorStats.js | 0 server/{ => src}/db/models/NetworkCheck.js | 0 server/{ => src}/db/models/Notification.js | 0 server/{ => src}/db/models/PageSpeedCheck.js | 2 - server/{ => src}/db/models/RecoveryToken.js | 0 server/{ => src}/db/models/StatusPage.js | 0 server/{ => src}/db/models/Team.js | 0 server/{ => src}/db/models/User.js | 0 server/{ => src}/db/mongo/MongoDB.js | 0 .../{ => src}/db/mongo/modules/checkModule.js | 0 .../db/mongo/modules/checkModuleQueries.js | 0 .../db/mongo/modules/diagnosticModule.js | 0 .../db/mongo/modules/hardwareCheckModule.js | 0 .../db/mongo/modules/inviteModule.js | 0 .../mongo/modules/maintenanceWindowModule.js | 0 .../db/mongo/modules/monitorModule.js | 0 .../db/mongo/modules/monitorModuleQueries.js | 0 .../db/mongo/modules/networkCheckModule.js | 0 .../db/mongo/modules/notificationModule.js | 0 .../db/mongo/modules/pageSpeedCheckModule.js | 0 .../db/mongo/modules/recoveryModule.js | 0 .../db/mongo/modules/settingsModule.js | 0 .../db/mongo/modules/statusPageModule.js | 0 .../{ => src}/db/mongo/modules/userModule.js | 0 server/{ => src}/db/mongo/utils/seedDb.js | 0 server/src/index.js | 55 +++++++++++++++++++ server/{ => src}/locales/en.json | 0 server/{ => src}/locales/en.json.bak | 0 server/{ => src}/locales/tr.json | 0 server/{ => src}/middleware/handleErrors.js | 0 server/{ => src}/middleware/isAllowed.js | 0 .../middleware/languageMiddleware.js | 0 .../{ => src}/middleware/responseHandler.js | 0 server/{ => src}/middleware/verifyJWT.js | 0 .../{ => src}/middleware/verifyOwnership.js | 0 .../{ => src}/middleware/verifySuperAdmin.js | 0 .../{ => src}/middleware/verifyTeamAccess.js | 0 server/{ => src}/routes/announcementsRoute.js | 0 server/{ => src}/routes/authRoute.js | 0 server/{ => src}/routes/checkRoute.js | 0 server/{ => src}/routes/diagnosticRoute.js | 0 server/{ => src}/routes/inviteRoute.js | 0 server/{ => src}/routes/logRoutes.js | 0 .../routes/maintenanceWindowRoute.js | 0 server/{ => src}/routes/monitorRoute.js | 0 server/{ => src}/routes/notificationRoute.js | 0 server/{ => src}/routes/queueRoute.js | 0 server/{ => src}/routes/settingsRoute.js | 0 server/{ => src}/routes/statusPageRoute.js | 0 .../service/business/checkService.js | 0 .../service/business/diagnosticService.js | 0 .../service/business/inviteService.js | 0 .../business/maintenanceWindowService.js | 0 .../service/business/monitorService.js | 0 .../{ => src}/service/business/userService.js | 0 server/{ => src}/service/data/redisService.js | 0 .../infrastructure/JobQueue/JobQueue.js | 0 .../infrastructure/JobQueue/JobQueueHelper.js | 0 .../infrastructure/PulseQueue/PulseQueue.js | 0 .../PulseQueue/PulseQueueHelper.js | 0 .../SuperSimpleQueue/SuperSimpleQueue.js | 0 .../SuperSimpleQueueHelper.js | 0 .../service/infrastructure/bufferService.js | 0 .../service/infrastructure/emailService.js | 0 .../service/infrastructure/errorService.js | 0 .../service/infrastructure/networkService.js | 0 .../infrastructure/notificationService.js | 0 .../infrastructure/notificationUtils.js | 0 .../service/infrastructure/statusService.js | 0 .../service/system/serviceRegistry.js | 0 .../service/system/settingsService.js | 0 .../{ => src}/service/system/stringService.js | 0 .../service/system/translationService.js | 0 server/{ => src}/shutdown.js | 0 server/{ => src}/templates/addReview.mjml | 0 .../templates/employeeActivation.mjml | 0 .../{ => src}/templates/hardwareIncident.mjml | 0 .../templates/noIncidentsThisWeek.mjml | 0 server/{ => src}/templates/passwordReset.mjml | 0 server/{ => src}/templates/serverIsDown.mjml | 0 server/{ => src}/templates/serverIsUp.mjml | 0 .../templates/testEmailTemplate.mjml | 0 server/{ => src}/templates/welcomeEmail.mjml | 0 server/{ => src}/utils/dataUtils.js | 0 server/{ => src}/utils/demoMonitors.json | 0 server/{ => src}/utils/demoMonitorsOld.json | 0 server/{ => src}/utils/imageProcessing.js | 0 server/{ => src}/utils/logger.js | 0 server/{ => src}/utils/roleUtils.js | 0 server/{ => src}/utils/utils.js | 0 server/{ => src}/validation/joi.js | 0 127 files changed, 71 insertions(+), 19 deletions(-) mode change 100755 => 100644 server/index.js delete mode 100644 server/server.js rename server/{ => src}/app.js (100%) rename server/{ => src}/config/controllers.js (100%) rename server/{ => src}/config/database.js (100%) rename server/{ => src}/config/routes.js (100%) rename server/{ => src}/config/services.js (100%) rename server/{ => src}/controllers/announcementsController.js (100%) rename server/{ => src}/controllers/authController.js (100%) rename server/{ => src}/controllers/baseController.js (100%) rename server/{ => src}/controllers/checkController.js (100%) rename server/{ => src}/controllers/controllerUtils.js (100%) rename server/{ => src}/controllers/diagnosticController.js (100%) rename server/{ => src}/controllers/inviteController.js (100%) rename server/{ => src}/controllers/logController.js (100%) rename server/{ => src}/controllers/maintenanceWindowController.js (100%) rename server/{ => src}/controllers/monitorController.js (100%) rename server/{ => src}/controllers/notificationController.js (100%) rename server/{ => src}/controllers/queueController.js (100%) rename server/{ => src}/controllers/settingsController.js (100%) rename server/{ => src}/controllers/statusPageController.js (100%) rename server/{ => src}/db/models/AppSettings.js (100%) rename server/{ => src}/db/models/Check.js (100%) rename server/{ => src}/db/models/HardwareCheck.js (100%) rename server/{ => src}/db/models/InviteToken.js (100%) rename server/{ => src}/db/models/MaintenanceWindow.js (100%) rename server/{ => src}/db/models/Monitor.js (100%) rename server/{ => src}/db/models/MonitorStats.js (100%) rename server/{ => src}/db/models/NetworkCheck.js (100%) rename server/{ => src}/db/models/Notification.js (100%) rename server/{ => src}/db/models/PageSpeedCheck.js (96%) rename server/{ => src}/db/models/RecoveryToken.js (100%) rename server/{ => src}/db/models/StatusPage.js (100%) rename server/{ => src}/db/models/Team.js (100%) rename server/{ => src}/db/models/User.js (100%) rename server/{ => src}/db/mongo/MongoDB.js (100%) rename server/{ => src}/db/mongo/modules/checkModule.js (100%) rename server/{ => src}/db/mongo/modules/checkModuleQueries.js (100%) rename server/{ => src}/db/mongo/modules/diagnosticModule.js (100%) rename server/{ => src}/db/mongo/modules/hardwareCheckModule.js (100%) rename server/{ => src}/db/mongo/modules/inviteModule.js (100%) rename server/{ => src}/db/mongo/modules/maintenanceWindowModule.js (100%) rename server/{ => src}/db/mongo/modules/monitorModule.js (100%) rename server/{ => src}/db/mongo/modules/monitorModuleQueries.js (100%) rename server/{ => src}/db/mongo/modules/networkCheckModule.js (100%) rename server/{ => src}/db/mongo/modules/notificationModule.js (100%) rename server/{ => src}/db/mongo/modules/pageSpeedCheckModule.js (100%) rename server/{ => src}/db/mongo/modules/recoveryModule.js (100%) rename server/{ => src}/db/mongo/modules/settingsModule.js (100%) rename server/{ => src}/db/mongo/modules/statusPageModule.js (100%) rename server/{ => src}/db/mongo/modules/userModule.js (100%) rename server/{ => src}/db/mongo/utils/seedDb.js (100%) create mode 100755 server/src/index.js rename server/{ => src}/locales/en.json (100%) rename server/{ => src}/locales/en.json.bak (100%) rename server/{ => src}/locales/tr.json (100%) rename server/{ => src}/middleware/handleErrors.js (100%) rename server/{ => src}/middleware/isAllowed.js (100%) rename server/{ => src}/middleware/languageMiddleware.js (100%) rename server/{ => src}/middleware/responseHandler.js (100%) rename server/{ => src}/middleware/verifyJWT.js (100%) rename server/{ => src}/middleware/verifyOwnership.js (100%) rename server/{ => src}/middleware/verifySuperAdmin.js (100%) rename server/{ => src}/middleware/verifyTeamAccess.js (100%) rename server/{ => src}/routes/announcementsRoute.js (100%) rename server/{ => src}/routes/authRoute.js (100%) rename server/{ => src}/routes/checkRoute.js (100%) rename server/{ => src}/routes/diagnosticRoute.js (100%) rename server/{ => src}/routes/inviteRoute.js (100%) rename server/{ => src}/routes/logRoutes.js (100%) rename server/{ => src}/routes/maintenanceWindowRoute.js (100%) rename server/{ => src}/routes/monitorRoute.js (100%) rename server/{ => src}/routes/notificationRoute.js (100%) rename server/{ => src}/routes/queueRoute.js (100%) rename server/{ => src}/routes/settingsRoute.js (100%) rename server/{ => src}/routes/statusPageRoute.js (100%) rename server/{ => src}/service/business/checkService.js (100%) rename server/{ => src}/service/business/diagnosticService.js (100%) rename server/{ => src}/service/business/inviteService.js (100%) rename server/{ => src}/service/business/maintenanceWindowService.js (100%) rename server/{ => src}/service/business/monitorService.js (100%) rename server/{ => src}/service/business/userService.js (100%) rename server/{ => src}/service/data/redisService.js (100%) rename server/{ => src}/service/infrastructure/JobQueue/JobQueue.js (100%) rename server/{ => src}/service/infrastructure/JobQueue/JobQueueHelper.js (100%) rename server/{ => src}/service/infrastructure/PulseQueue/PulseQueue.js (100%) rename server/{ => src}/service/infrastructure/PulseQueue/PulseQueueHelper.js (100%) rename server/{ => src}/service/infrastructure/SuperSimpleQueue/SuperSimpleQueue.js (100%) rename server/{ => src}/service/infrastructure/SuperSimpleQueue/SuperSimpleQueueHelper.js (100%) rename server/{ => src}/service/infrastructure/bufferService.js (100%) rename server/{ => src}/service/infrastructure/emailService.js (100%) rename server/{ => src}/service/infrastructure/errorService.js (100%) rename server/{ => src}/service/infrastructure/networkService.js (100%) rename server/{ => src}/service/infrastructure/notificationService.js (100%) rename server/{ => src}/service/infrastructure/notificationUtils.js (100%) rename server/{ => src}/service/infrastructure/statusService.js (100%) rename server/{ => src}/service/system/serviceRegistry.js (100%) rename server/{ => src}/service/system/settingsService.js (100%) rename server/{ => src}/service/system/stringService.js (100%) rename server/{ => src}/service/system/translationService.js (100%) rename server/{ => src}/shutdown.js (100%) rename server/{ => src}/templates/addReview.mjml (100%) rename server/{ => src}/templates/employeeActivation.mjml (100%) rename server/{ => src}/templates/hardwareIncident.mjml (100%) rename server/{ => src}/templates/noIncidentsThisWeek.mjml (100%) rename server/{ => src}/templates/passwordReset.mjml (100%) rename server/{ => src}/templates/serverIsDown.mjml (100%) rename server/{ => src}/templates/serverIsUp.mjml (100%) rename server/{ => src}/templates/testEmailTemplate.mjml (100%) rename server/{ => src}/templates/welcomeEmail.mjml (100%) rename server/{ => src}/utils/dataUtils.js (100%) rename server/{ => src}/utils/demoMonitors.json (100%) rename server/{ => src}/utils/demoMonitorsOld.json (100%) rename server/{ => src}/utils/imageProcessing.js (100%) rename server/{ => src}/utils/logger.js (100%) rename server/{ => src}/utils/roleUtils.js (100%) rename server/{ => src}/utils/utils.js (100%) rename server/{ => src}/validation/joi.js (100%) diff --git a/docker/dev/server.Dockerfile b/docker/dev/server.Dockerfile index d9d99a09d..a3542c168 100755 --- a/docker/dev/server.Dockerfile +++ b/docker/dev/server.Dockerfile @@ -10,4 +10,4 @@ COPY ./server/ ./ EXPOSE 52345 -CMD ["node", "index.js"] \ No newline at end of file +CMD ["node", "src/index.js"] \ No newline at end of file diff --git a/docker/dist-arm/server.Dockerfile b/docker/dist-arm/server.Dockerfile index 981d1cf8f..c6d31a893 100644 --- a/docker/dist-arm/server.Dockerfile +++ b/docker/dist-arm/server.Dockerfile @@ -22,4 +22,4 @@ RUN chmod +x ./scripts/inject-vars.sh EXPOSE 52345 -CMD ./scripts/inject-vars.sh && node ./index.js +CMD ./scripts/inject-vars.sh && node ./src/index.js diff --git a/docker/dist-mono/server.Dockerfile b/docker/dist-mono/server.Dockerfile index f28c834ea..4063e4d7a 100644 --- a/docker/dist-mono/server.Dockerfile +++ b/docker/dist-mono/server.Dockerfile @@ -22,4 +22,4 @@ RUN chmod +x ./scripts/inject-vars.sh EXPOSE 52345 -CMD ./scripts/inject-vars.sh && node ./index.js +CMD ./scripts/inject-vars.sh && node ./src/index.js diff --git a/docker/dist/build_images.sh b/docker/dist/build_images.sh index ccfa9cc85..953682175 100755 --- a/docker/dist/build_images.sh +++ b/docker/dist/build_images.sh @@ -12,10 +12,10 @@ declare -A services=( ) for service in "${!services[@]}"; do - docker buildx build \ - --platform linux/amd64,linux/arm64 \ + docker build \ -f "${services[$service]}" \ -t "$service" \ + . if [ $? -ne 0 ]; then echo "Error building $service image. Exiting..." diff --git a/docker/dist/server.Dockerfile b/docker/dist/server.Dockerfile index d9d99a09d..a3542c168 100755 --- a/docker/dist/server.Dockerfile +++ b/docker/dist/server.Dockerfile @@ -10,4 +10,4 @@ COPY ./server/ ./ EXPOSE 52345 -CMD ["node", "index.js"] \ No newline at end of file +CMD ["node", "src/index.js"] \ No newline at end of file diff --git a/docker/prod/server.Dockerfile b/docker/prod/server.Dockerfile index c80f468f8..94018c07d 100755 --- a/docker/prod/server.Dockerfile +++ b/docker/prod/server.Dockerfile @@ -12,4 +12,4 @@ COPY ./server ./ EXPOSE 52345 -CMD ["node", "index.js"] \ No newline at end of file +CMD ["node", "src/index.js"] \ No newline at end of file diff --git a/docker/staging/server.Dockerfile b/docker/staging/server.Dockerfile index c80f468f8..94018c07d 100755 --- a/docker/staging/server.Dockerfile +++ b/docker/staging/server.Dockerfile @@ -12,4 +12,4 @@ COPY ./server ./ EXPOSE 52345 -CMD ["node", "index.js"] \ No newline at end of file +CMD ["node", "src/index.js"] \ No newline at end of file diff --git a/server/index.js b/server/index.js old mode 100755 new mode 100644 index 607847e8b..5c835b9f6 --- a/server/index.js +++ b/server/index.js @@ -1,14 +1,14 @@ -import { initializeServices } from "./config/services.js"; -import { initializeControllers } from "./config/controllers.js"; -import { createApp } from "./app.js"; +import { initializeServices } from "./src/config/services.js"; +import { initializeControllers } from "./src/config/controllers.js"; +import { createApp } from "./src/app.js"; import { initShutdownListener } from "./shutdown.js"; import logger from "./utils/logger.js"; import { fileURLToPath } from "url"; import path from "path"; import fs from "fs"; -import SettingsService from "./service/system/settingsService.js"; -import AppSettings from "./db/models/AppSettings.js"; +import SettingsService from "./src/service/system/settingsService.js"; +import AppSettings from "./src/db/models/AppSettings.js"; const SERVICE_NAME = "Server"; diff --git a/server/nodemon.json b/server/nodemon.json index 928d1abc2..88d6ac686 100755 --- a/server/nodemon.json +++ b/server/nodemon.json @@ -1,5 +1,5 @@ { - "ignore": ["locales/*", "*.log", "node_modules/*"], - "watch": ["*.js", "*.json"], + "ignore": ["src/locales/*", "*.log", "node_modules/*"], + "watch": ["src/**/*.js", "*.json"], "ext": "js,json" } diff --git a/server/package.json b/server/package.json index 62a91921b..d3d7344e9 100755 --- a/server/package.json +++ b/server/package.json @@ -6,7 +6,7 @@ "type": "module", "scripts": { "test": "c8 mocha", - "dev": "nodemon index.js", + "dev": "nodemon src/index.js", "lint": "eslint .", "lint-fix": "eslint --fix .", "format": "prettier --write .", diff --git a/server/server.js b/server/server.js deleted file mode 100644 index 13a01fae6..000000000 --- a/server/server.js +++ /dev/null @@ -1 +0,0 @@ -export const startServer = () => {}; diff --git a/server/app.js b/server/src/app.js similarity index 100% rename from server/app.js rename to server/src/app.js diff --git a/server/config/controllers.js b/server/src/config/controllers.js similarity index 100% rename from server/config/controllers.js rename to server/src/config/controllers.js diff --git a/server/config/database.js b/server/src/config/database.js similarity index 100% rename from server/config/database.js rename to server/src/config/database.js diff --git a/server/config/routes.js b/server/src/config/routes.js similarity index 100% rename from server/config/routes.js rename to server/src/config/routes.js diff --git a/server/config/services.js b/server/src/config/services.js similarity index 100% rename from server/config/services.js rename to server/src/config/services.js diff --git a/server/controllers/announcementsController.js b/server/src/controllers/announcementsController.js similarity index 100% rename from server/controllers/announcementsController.js rename to server/src/controllers/announcementsController.js diff --git a/server/controllers/authController.js b/server/src/controllers/authController.js similarity index 100% rename from server/controllers/authController.js rename to server/src/controllers/authController.js diff --git a/server/controllers/baseController.js b/server/src/controllers/baseController.js similarity index 100% rename from server/controllers/baseController.js rename to server/src/controllers/baseController.js diff --git a/server/controllers/checkController.js b/server/src/controllers/checkController.js similarity index 100% rename from server/controllers/checkController.js rename to server/src/controllers/checkController.js diff --git a/server/controllers/controllerUtils.js b/server/src/controllers/controllerUtils.js similarity index 100% rename from server/controllers/controllerUtils.js rename to server/src/controllers/controllerUtils.js diff --git a/server/controllers/diagnosticController.js b/server/src/controllers/diagnosticController.js similarity index 100% rename from server/controllers/diagnosticController.js rename to server/src/controllers/diagnosticController.js diff --git a/server/controllers/inviteController.js b/server/src/controllers/inviteController.js similarity index 100% rename from server/controllers/inviteController.js rename to server/src/controllers/inviteController.js diff --git a/server/controllers/logController.js b/server/src/controllers/logController.js similarity index 100% rename from server/controllers/logController.js rename to server/src/controllers/logController.js diff --git a/server/controllers/maintenanceWindowController.js b/server/src/controllers/maintenanceWindowController.js similarity index 100% rename from server/controllers/maintenanceWindowController.js rename to server/src/controllers/maintenanceWindowController.js diff --git a/server/controllers/monitorController.js b/server/src/controllers/monitorController.js similarity index 100% rename from server/controllers/monitorController.js rename to server/src/controllers/monitorController.js diff --git a/server/controllers/notificationController.js b/server/src/controllers/notificationController.js similarity index 100% rename from server/controllers/notificationController.js rename to server/src/controllers/notificationController.js diff --git a/server/controllers/queueController.js b/server/src/controllers/queueController.js similarity index 100% rename from server/controllers/queueController.js rename to server/src/controllers/queueController.js diff --git a/server/controllers/settingsController.js b/server/src/controllers/settingsController.js similarity index 100% rename from server/controllers/settingsController.js rename to server/src/controllers/settingsController.js diff --git a/server/controllers/statusPageController.js b/server/src/controllers/statusPageController.js similarity index 100% rename from server/controllers/statusPageController.js rename to server/src/controllers/statusPageController.js diff --git a/server/db/models/AppSettings.js b/server/src/db/models/AppSettings.js similarity index 100% rename from server/db/models/AppSettings.js rename to server/src/db/models/AppSettings.js diff --git a/server/db/models/Check.js b/server/src/db/models/Check.js similarity index 100% rename from server/db/models/Check.js rename to server/src/db/models/Check.js diff --git a/server/db/models/HardwareCheck.js b/server/src/db/models/HardwareCheck.js similarity index 100% rename from server/db/models/HardwareCheck.js rename to server/src/db/models/HardwareCheck.js diff --git a/server/db/models/InviteToken.js b/server/src/db/models/InviteToken.js similarity index 100% rename from server/db/models/InviteToken.js rename to server/src/db/models/InviteToken.js diff --git a/server/db/models/MaintenanceWindow.js b/server/src/db/models/MaintenanceWindow.js similarity index 100% rename from server/db/models/MaintenanceWindow.js rename to server/src/db/models/MaintenanceWindow.js diff --git a/server/db/models/Monitor.js b/server/src/db/models/Monitor.js similarity index 100% rename from server/db/models/Monitor.js rename to server/src/db/models/Monitor.js diff --git a/server/db/models/MonitorStats.js b/server/src/db/models/MonitorStats.js similarity index 100% rename from server/db/models/MonitorStats.js rename to server/src/db/models/MonitorStats.js diff --git a/server/db/models/NetworkCheck.js b/server/src/db/models/NetworkCheck.js similarity index 100% rename from server/db/models/NetworkCheck.js rename to server/src/db/models/NetworkCheck.js diff --git a/server/db/models/Notification.js b/server/src/db/models/Notification.js similarity index 100% rename from server/db/models/Notification.js rename to server/src/db/models/Notification.js diff --git a/server/db/models/PageSpeedCheck.js b/server/src/db/models/PageSpeedCheck.js similarity index 96% rename from server/db/models/PageSpeedCheck.js rename to server/src/db/models/PageSpeedCheck.js index 513dd3039..67c7c375e 100755 --- a/server/db/models/PageSpeedCheck.js +++ b/server/src/db/models/PageSpeedCheck.js @@ -1,7 +1,5 @@ import mongoose from "mongoose"; import { BaseCheckSchema } from "./Check.js"; -import logger from "../../utils/logger.js"; -import { time } from "console"; const AuditSchema = mongoose.Schema({ id: { type: String, required: true }, title: { type: String, required: true }, diff --git a/server/db/models/RecoveryToken.js b/server/src/db/models/RecoveryToken.js similarity index 100% rename from server/db/models/RecoveryToken.js rename to server/src/db/models/RecoveryToken.js diff --git a/server/db/models/StatusPage.js b/server/src/db/models/StatusPage.js similarity index 100% rename from server/db/models/StatusPage.js rename to server/src/db/models/StatusPage.js diff --git a/server/db/models/Team.js b/server/src/db/models/Team.js similarity index 100% rename from server/db/models/Team.js rename to server/src/db/models/Team.js diff --git a/server/db/models/User.js b/server/src/db/models/User.js similarity index 100% rename from server/db/models/User.js rename to server/src/db/models/User.js diff --git a/server/db/mongo/MongoDB.js b/server/src/db/mongo/MongoDB.js similarity index 100% rename from server/db/mongo/MongoDB.js rename to server/src/db/mongo/MongoDB.js diff --git a/server/db/mongo/modules/checkModule.js b/server/src/db/mongo/modules/checkModule.js similarity index 100% rename from server/db/mongo/modules/checkModule.js rename to server/src/db/mongo/modules/checkModule.js diff --git a/server/db/mongo/modules/checkModuleQueries.js b/server/src/db/mongo/modules/checkModuleQueries.js similarity index 100% rename from server/db/mongo/modules/checkModuleQueries.js rename to server/src/db/mongo/modules/checkModuleQueries.js diff --git a/server/db/mongo/modules/diagnosticModule.js b/server/src/db/mongo/modules/diagnosticModule.js similarity index 100% rename from server/db/mongo/modules/diagnosticModule.js rename to server/src/db/mongo/modules/diagnosticModule.js diff --git a/server/db/mongo/modules/hardwareCheckModule.js b/server/src/db/mongo/modules/hardwareCheckModule.js similarity index 100% rename from server/db/mongo/modules/hardwareCheckModule.js rename to server/src/db/mongo/modules/hardwareCheckModule.js diff --git a/server/db/mongo/modules/inviteModule.js b/server/src/db/mongo/modules/inviteModule.js similarity index 100% rename from server/db/mongo/modules/inviteModule.js rename to server/src/db/mongo/modules/inviteModule.js diff --git a/server/db/mongo/modules/maintenanceWindowModule.js b/server/src/db/mongo/modules/maintenanceWindowModule.js similarity index 100% rename from server/db/mongo/modules/maintenanceWindowModule.js rename to server/src/db/mongo/modules/maintenanceWindowModule.js diff --git a/server/db/mongo/modules/monitorModule.js b/server/src/db/mongo/modules/monitorModule.js similarity index 100% rename from server/db/mongo/modules/monitorModule.js rename to server/src/db/mongo/modules/monitorModule.js diff --git a/server/db/mongo/modules/monitorModuleQueries.js b/server/src/db/mongo/modules/monitorModuleQueries.js similarity index 100% rename from server/db/mongo/modules/monitorModuleQueries.js rename to server/src/db/mongo/modules/monitorModuleQueries.js diff --git a/server/db/mongo/modules/networkCheckModule.js b/server/src/db/mongo/modules/networkCheckModule.js similarity index 100% rename from server/db/mongo/modules/networkCheckModule.js rename to server/src/db/mongo/modules/networkCheckModule.js diff --git a/server/db/mongo/modules/notificationModule.js b/server/src/db/mongo/modules/notificationModule.js similarity index 100% rename from server/db/mongo/modules/notificationModule.js rename to server/src/db/mongo/modules/notificationModule.js diff --git a/server/db/mongo/modules/pageSpeedCheckModule.js b/server/src/db/mongo/modules/pageSpeedCheckModule.js similarity index 100% rename from server/db/mongo/modules/pageSpeedCheckModule.js rename to server/src/db/mongo/modules/pageSpeedCheckModule.js diff --git a/server/db/mongo/modules/recoveryModule.js b/server/src/db/mongo/modules/recoveryModule.js similarity index 100% rename from server/db/mongo/modules/recoveryModule.js rename to server/src/db/mongo/modules/recoveryModule.js diff --git a/server/db/mongo/modules/settingsModule.js b/server/src/db/mongo/modules/settingsModule.js similarity index 100% rename from server/db/mongo/modules/settingsModule.js rename to server/src/db/mongo/modules/settingsModule.js diff --git a/server/db/mongo/modules/statusPageModule.js b/server/src/db/mongo/modules/statusPageModule.js similarity index 100% rename from server/db/mongo/modules/statusPageModule.js rename to server/src/db/mongo/modules/statusPageModule.js diff --git a/server/db/mongo/modules/userModule.js b/server/src/db/mongo/modules/userModule.js similarity index 100% rename from server/db/mongo/modules/userModule.js rename to server/src/db/mongo/modules/userModule.js diff --git a/server/db/mongo/utils/seedDb.js b/server/src/db/mongo/utils/seedDb.js similarity index 100% rename from server/db/mongo/utils/seedDb.js rename to server/src/db/mongo/utils/seedDb.js diff --git a/server/src/index.js b/server/src/index.js new file mode 100755 index 000000000..a34a517ca --- /dev/null +++ b/server/src/index.js @@ -0,0 +1,55 @@ +import { initializeServices } from "./config/services.js"; +import { initializeControllers } from "./config/controllers.js"; +import { createApp } from "./app.js"; +import { initShutdownListener } from "./shutdown.js"; +import logger from "./utils/logger.js"; +import { fileURLToPath } from "url"; +import path from "path"; +import fs from "fs"; + +import SettingsService from "./service/system/settingsService.js"; +import AppSettings from "./db/models/AppSettings.js"; + +const SERVICE_NAME = "Server"; + +const startApp = async () => { + // FE path + const __filename = fileURLToPath(import.meta.url); + const __dirname = path.dirname(__filename); + const openApiSpec = JSON.parse(fs.readFileSync(path.join(__dirname, "../openapi.json"), "utf8")); + const frontendPath = path.join(__dirname, "public"); + // Create services + const settingsService = new SettingsService(AppSettings); + const appSettings = settingsService.loadSettings(); + + // Initialize services + const services = await initializeServices(appSettings, settingsService); + + // Initialize controllers + const controllers = initializeControllers(services); + + const app = createApp({ + services, + controllers, + appSettings, + frontendPath, + openApiSpec, + }); + + const port = appSettings.port || 52345; + const server = app.listen(port, () => { + logger.info({ message: `Server started on port:${port}` }); + }); + + initShutdownListener(server, services); +}; + +startApp().catch((error) => { + logger.error({ + message: error.message, + service: SERVICE_NAME, + method: "startApp", + stack: error.stack, + }); + process.exit(1); +}); diff --git a/server/locales/en.json b/server/src/locales/en.json similarity index 100% rename from server/locales/en.json rename to server/src/locales/en.json diff --git a/server/locales/en.json.bak b/server/src/locales/en.json.bak similarity index 100% rename from server/locales/en.json.bak rename to server/src/locales/en.json.bak diff --git a/server/locales/tr.json b/server/src/locales/tr.json similarity index 100% rename from server/locales/tr.json rename to server/src/locales/tr.json diff --git a/server/middleware/handleErrors.js b/server/src/middleware/handleErrors.js similarity index 100% rename from server/middleware/handleErrors.js rename to server/src/middleware/handleErrors.js diff --git a/server/middleware/isAllowed.js b/server/src/middleware/isAllowed.js similarity index 100% rename from server/middleware/isAllowed.js rename to server/src/middleware/isAllowed.js diff --git a/server/middleware/languageMiddleware.js b/server/src/middleware/languageMiddleware.js similarity index 100% rename from server/middleware/languageMiddleware.js rename to server/src/middleware/languageMiddleware.js diff --git a/server/middleware/responseHandler.js b/server/src/middleware/responseHandler.js similarity index 100% rename from server/middleware/responseHandler.js rename to server/src/middleware/responseHandler.js diff --git a/server/middleware/verifyJWT.js b/server/src/middleware/verifyJWT.js similarity index 100% rename from server/middleware/verifyJWT.js rename to server/src/middleware/verifyJWT.js diff --git a/server/middleware/verifyOwnership.js b/server/src/middleware/verifyOwnership.js similarity index 100% rename from server/middleware/verifyOwnership.js rename to server/src/middleware/verifyOwnership.js diff --git a/server/middleware/verifySuperAdmin.js b/server/src/middleware/verifySuperAdmin.js similarity index 100% rename from server/middleware/verifySuperAdmin.js rename to server/src/middleware/verifySuperAdmin.js diff --git a/server/middleware/verifyTeamAccess.js b/server/src/middleware/verifyTeamAccess.js similarity index 100% rename from server/middleware/verifyTeamAccess.js rename to server/src/middleware/verifyTeamAccess.js diff --git a/server/routes/announcementsRoute.js b/server/src/routes/announcementsRoute.js similarity index 100% rename from server/routes/announcementsRoute.js rename to server/src/routes/announcementsRoute.js diff --git a/server/routes/authRoute.js b/server/src/routes/authRoute.js similarity index 100% rename from server/routes/authRoute.js rename to server/src/routes/authRoute.js diff --git a/server/routes/checkRoute.js b/server/src/routes/checkRoute.js similarity index 100% rename from server/routes/checkRoute.js rename to server/src/routes/checkRoute.js diff --git a/server/routes/diagnosticRoute.js b/server/src/routes/diagnosticRoute.js similarity index 100% rename from server/routes/diagnosticRoute.js rename to server/src/routes/diagnosticRoute.js diff --git a/server/routes/inviteRoute.js b/server/src/routes/inviteRoute.js similarity index 100% rename from server/routes/inviteRoute.js rename to server/src/routes/inviteRoute.js diff --git a/server/routes/logRoutes.js b/server/src/routes/logRoutes.js similarity index 100% rename from server/routes/logRoutes.js rename to server/src/routes/logRoutes.js diff --git a/server/routes/maintenanceWindowRoute.js b/server/src/routes/maintenanceWindowRoute.js similarity index 100% rename from server/routes/maintenanceWindowRoute.js rename to server/src/routes/maintenanceWindowRoute.js diff --git a/server/routes/monitorRoute.js b/server/src/routes/monitorRoute.js similarity index 100% rename from server/routes/monitorRoute.js rename to server/src/routes/monitorRoute.js diff --git a/server/routes/notificationRoute.js b/server/src/routes/notificationRoute.js similarity index 100% rename from server/routes/notificationRoute.js rename to server/src/routes/notificationRoute.js diff --git a/server/routes/queueRoute.js b/server/src/routes/queueRoute.js similarity index 100% rename from server/routes/queueRoute.js rename to server/src/routes/queueRoute.js diff --git a/server/routes/settingsRoute.js b/server/src/routes/settingsRoute.js similarity index 100% rename from server/routes/settingsRoute.js rename to server/src/routes/settingsRoute.js diff --git a/server/routes/statusPageRoute.js b/server/src/routes/statusPageRoute.js similarity index 100% rename from server/routes/statusPageRoute.js rename to server/src/routes/statusPageRoute.js diff --git a/server/service/business/checkService.js b/server/src/service/business/checkService.js similarity index 100% rename from server/service/business/checkService.js rename to server/src/service/business/checkService.js diff --git a/server/service/business/diagnosticService.js b/server/src/service/business/diagnosticService.js similarity index 100% rename from server/service/business/diagnosticService.js rename to server/src/service/business/diagnosticService.js diff --git a/server/service/business/inviteService.js b/server/src/service/business/inviteService.js similarity index 100% rename from server/service/business/inviteService.js rename to server/src/service/business/inviteService.js diff --git a/server/service/business/maintenanceWindowService.js b/server/src/service/business/maintenanceWindowService.js similarity index 100% rename from server/service/business/maintenanceWindowService.js rename to server/src/service/business/maintenanceWindowService.js diff --git a/server/service/business/monitorService.js b/server/src/service/business/monitorService.js similarity index 100% rename from server/service/business/monitorService.js rename to server/src/service/business/monitorService.js diff --git a/server/service/business/userService.js b/server/src/service/business/userService.js similarity index 100% rename from server/service/business/userService.js rename to server/src/service/business/userService.js diff --git a/server/service/data/redisService.js b/server/src/service/data/redisService.js similarity index 100% rename from server/service/data/redisService.js rename to server/src/service/data/redisService.js diff --git a/server/service/infrastructure/JobQueue/JobQueue.js b/server/src/service/infrastructure/JobQueue/JobQueue.js similarity index 100% rename from server/service/infrastructure/JobQueue/JobQueue.js rename to server/src/service/infrastructure/JobQueue/JobQueue.js diff --git a/server/service/infrastructure/JobQueue/JobQueueHelper.js b/server/src/service/infrastructure/JobQueue/JobQueueHelper.js similarity index 100% rename from server/service/infrastructure/JobQueue/JobQueueHelper.js rename to server/src/service/infrastructure/JobQueue/JobQueueHelper.js diff --git a/server/service/infrastructure/PulseQueue/PulseQueue.js b/server/src/service/infrastructure/PulseQueue/PulseQueue.js similarity index 100% rename from server/service/infrastructure/PulseQueue/PulseQueue.js rename to server/src/service/infrastructure/PulseQueue/PulseQueue.js diff --git a/server/service/infrastructure/PulseQueue/PulseQueueHelper.js b/server/src/service/infrastructure/PulseQueue/PulseQueueHelper.js similarity index 100% rename from server/service/infrastructure/PulseQueue/PulseQueueHelper.js rename to server/src/service/infrastructure/PulseQueue/PulseQueueHelper.js diff --git a/server/service/infrastructure/SuperSimpleQueue/SuperSimpleQueue.js b/server/src/service/infrastructure/SuperSimpleQueue/SuperSimpleQueue.js similarity index 100% rename from server/service/infrastructure/SuperSimpleQueue/SuperSimpleQueue.js rename to server/src/service/infrastructure/SuperSimpleQueue/SuperSimpleQueue.js diff --git a/server/service/infrastructure/SuperSimpleQueue/SuperSimpleQueueHelper.js b/server/src/service/infrastructure/SuperSimpleQueue/SuperSimpleQueueHelper.js similarity index 100% rename from server/service/infrastructure/SuperSimpleQueue/SuperSimpleQueueHelper.js rename to server/src/service/infrastructure/SuperSimpleQueue/SuperSimpleQueueHelper.js diff --git a/server/service/infrastructure/bufferService.js b/server/src/service/infrastructure/bufferService.js similarity index 100% rename from server/service/infrastructure/bufferService.js rename to server/src/service/infrastructure/bufferService.js diff --git a/server/service/infrastructure/emailService.js b/server/src/service/infrastructure/emailService.js similarity index 100% rename from server/service/infrastructure/emailService.js rename to server/src/service/infrastructure/emailService.js diff --git a/server/service/infrastructure/errorService.js b/server/src/service/infrastructure/errorService.js similarity index 100% rename from server/service/infrastructure/errorService.js rename to server/src/service/infrastructure/errorService.js diff --git a/server/service/infrastructure/networkService.js b/server/src/service/infrastructure/networkService.js similarity index 100% rename from server/service/infrastructure/networkService.js rename to server/src/service/infrastructure/networkService.js diff --git a/server/service/infrastructure/notificationService.js b/server/src/service/infrastructure/notificationService.js similarity index 100% rename from server/service/infrastructure/notificationService.js rename to server/src/service/infrastructure/notificationService.js diff --git a/server/service/infrastructure/notificationUtils.js b/server/src/service/infrastructure/notificationUtils.js similarity index 100% rename from server/service/infrastructure/notificationUtils.js rename to server/src/service/infrastructure/notificationUtils.js diff --git a/server/service/infrastructure/statusService.js b/server/src/service/infrastructure/statusService.js similarity index 100% rename from server/service/infrastructure/statusService.js rename to server/src/service/infrastructure/statusService.js diff --git a/server/service/system/serviceRegistry.js b/server/src/service/system/serviceRegistry.js similarity index 100% rename from server/service/system/serviceRegistry.js rename to server/src/service/system/serviceRegistry.js diff --git a/server/service/system/settingsService.js b/server/src/service/system/settingsService.js similarity index 100% rename from server/service/system/settingsService.js rename to server/src/service/system/settingsService.js diff --git a/server/service/system/stringService.js b/server/src/service/system/stringService.js similarity index 100% rename from server/service/system/stringService.js rename to server/src/service/system/stringService.js diff --git a/server/service/system/translationService.js b/server/src/service/system/translationService.js similarity index 100% rename from server/service/system/translationService.js rename to server/src/service/system/translationService.js diff --git a/server/shutdown.js b/server/src/shutdown.js similarity index 100% rename from server/shutdown.js rename to server/src/shutdown.js diff --git a/server/templates/addReview.mjml b/server/src/templates/addReview.mjml similarity index 100% rename from server/templates/addReview.mjml rename to server/src/templates/addReview.mjml diff --git a/server/templates/employeeActivation.mjml b/server/src/templates/employeeActivation.mjml similarity index 100% rename from server/templates/employeeActivation.mjml rename to server/src/templates/employeeActivation.mjml diff --git a/server/templates/hardwareIncident.mjml b/server/src/templates/hardwareIncident.mjml similarity index 100% rename from server/templates/hardwareIncident.mjml rename to server/src/templates/hardwareIncident.mjml diff --git a/server/templates/noIncidentsThisWeek.mjml b/server/src/templates/noIncidentsThisWeek.mjml similarity index 100% rename from server/templates/noIncidentsThisWeek.mjml rename to server/src/templates/noIncidentsThisWeek.mjml diff --git a/server/templates/passwordReset.mjml b/server/src/templates/passwordReset.mjml similarity index 100% rename from server/templates/passwordReset.mjml rename to server/src/templates/passwordReset.mjml diff --git a/server/templates/serverIsDown.mjml b/server/src/templates/serverIsDown.mjml similarity index 100% rename from server/templates/serverIsDown.mjml rename to server/src/templates/serverIsDown.mjml diff --git a/server/templates/serverIsUp.mjml b/server/src/templates/serverIsUp.mjml similarity index 100% rename from server/templates/serverIsUp.mjml rename to server/src/templates/serverIsUp.mjml diff --git a/server/templates/testEmailTemplate.mjml b/server/src/templates/testEmailTemplate.mjml similarity index 100% rename from server/templates/testEmailTemplate.mjml rename to server/src/templates/testEmailTemplate.mjml diff --git a/server/templates/welcomeEmail.mjml b/server/src/templates/welcomeEmail.mjml similarity index 100% rename from server/templates/welcomeEmail.mjml rename to server/src/templates/welcomeEmail.mjml diff --git a/server/utils/dataUtils.js b/server/src/utils/dataUtils.js similarity index 100% rename from server/utils/dataUtils.js rename to server/src/utils/dataUtils.js diff --git a/server/utils/demoMonitors.json b/server/src/utils/demoMonitors.json similarity index 100% rename from server/utils/demoMonitors.json rename to server/src/utils/demoMonitors.json diff --git a/server/utils/demoMonitorsOld.json b/server/src/utils/demoMonitorsOld.json similarity index 100% rename from server/utils/demoMonitorsOld.json rename to server/src/utils/demoMonitorsOld.json diff --git a/server/utils/imageProcessing.js b/server/src/utils/imageProcessing.js similarity index 100% rename from server/utils/imageProcessing.js rename to server/src/utils/imageProcessing.js diff --git a/server/utils/logger.js b/server/src/utils/logger.js similarity index 100% rename from server/utils/logger.js rename to server/src/utils/logger.js diff --git a/server/utils/roleUtils.js b/server/src/utils/roleUtils.js similarity index 100% rename from server/utils/roleUtils.js rename to server/src/utils/roleUtils.js diff --git a/server/utils/utils.js b/server/src/utils/utils.js similarity index 100% rename from server/utils/utils.js rename to server/src/utils/utils.js diff --git a/server/validation/joi.js b/server/src/validation/joi.js similarity index 100% rename from server/validation/joi.js rename to server/src/validation/joi.js