import { sql } from "drizzle-orm"; import { db } from "../db/db.controller.js"; import { type NewServerData, serverData, } from "../db/schema/serverData.schema.js"; import { createLogger } from "../logger/logger.controller.js"; import { tryCatch } from "../utils/trycatch.utils.js"; const servers: NewServerData[] = [ { name: "Test server 1", server: "USMCD1VMS036", plantToken: "test3", idAddress: "10.193.0.56", greatPlainsPlantCode: "00", contactEmail: "", contactPhone: "", serverLoc: "D$\\LST_V3", buildNumber: 1, }, { name: "Test server 2", server: "USIOW1VMS036", plantToken: "test2", idAddress: "10.75.0.56", greatPlainsPlantCode: "00", contactEmail: "", contactPhone: "", serverLoc: "D$\\LST_V3", buildNumber: 1, }, { name: "Lima", server: "USLIM1VMS006", plantToken: "uslim1", idAddress: "10.53.0.26", greatPlainsPlantCode: "50", contactEmail: "", contactPhone: "", serverLoc: "D$\\LST_V3", buildNumber: 1, }, { name: "Houston", server: "ushou1VMS006", plantToken: "ushou1", idAddress: "10.195.0.26", greatPlainsPlantCode: "20", contactEmail: "", contactPhone: "", serverLoc: "D$\\LST_V3", buildNumber: 1, }, { name: "Dayton", server: "usday1VMS006", plantToken: "usday1", idAddress: "10.44.0.56", greatPlainsPlantCode: "80", contactEmail: "", contactPhone: "", serverLoc: "D$\\LST_V3", buildNumber: 1, }, { name: "West Bend", server: "usweb1VMS006", plantToken: "usweb1", idAddress: "10.80.0.26", greatPlainsPlantCode: "65", contactEmail: "", contactPhone: "", serverLoc: "D$\\LST_V3", buildNumber: 1, }, { name: "Jeff City", server: "usjci1VMS006", plantToken: "usjci", idAddress: "10.167.0.26", greatPlainsPlantCode: "40", contactEmail: "", contactPhone: "", serverLoc: "D$\\LST_V3", buildNumber: 1, }, { name: "Sherman", server: "usshe1vms006", plantToken: "usshe1", idAddress: "10.205.0.26", greatPlainsPlantCode: "21", contactEmail: "", contactPhone: "", serverLoc: "D$\\LST_V3", buildNumber: 1, }, ]; export const serversChecks = async () => { const log = createLogger({ module: "system", subModule: "serverData" }); const { data, error } = await tryCatch( db .insert(serverData) .values(servers) .onConflictDoUpdate({ target: serverData.plantToken, set: { server: sql`excluded.server`, name: sql`excluded.name`, idAddress: sql`excluded."id_address"`, greatPlainsPlantCode: sql`excluded.great_plains_plant_code`, contactEmail: sql`excluded."contact_email"`, contactPhone: sql`excluded.contact_phone`, serverLoc: sql`excluded.server_loc`, }, }) .returning(), ); if (error) { log.error( { error: error }, "There was an error when adding or updating the servers.", ); } if (data) { log.info({}, "All Servers were added/updated"); } };