// OwlBoard - © Fred Boniface 2022 - Licensed under GPLv3 (or later) // Please see the included LICENSE file. Statically served fonts are // licensed separately, each folder contains a license file where a // different license applies. const express = require('express'); const app = express(); const version = require('./src/configs/version.configs'); const testRtr = require('./src/routes/test.routes'); const listRtr = require('./src/routes/list.routes'); const ldbRtr = require('./src/routes/ldb.routes'); const kubeRtr = require('./src/routes/kube.routes'); // Print version number: console.log(`Starting OwlBoard - App Version: ${version.app} - API versions: ${version.api}`); // Express Error Handling: app.use((err, req, res, next) => { const statusCode = err.statuscode || 500; console.error(err.message, err.stack); res.status(statusCode).json({'message': err.message}); return; }); // Express Submodules: app.use(express.json()); //JSON Parsing for POST Requests app.use(express.static('static')); //Serve static content from /static // Express Routes app.use('/api/v1/test', testRtr); app.use('/api/v1/list', listRtr); app.use('/api/v1/ldb', ldbRtr); app.use('/api/kube', kubeRtr); // Start Express app.listen(process.env.OWL_SRV_PORT, process.env.OWL_SRV_LISTEN, (error) =>{ if(!error) { console.log(`Started server on http://${process.env.OWL_SRV_LISTEN}:${process.env.OWL_SRV_PORT}`); } else { console.log("Error occurred, server can't start", error); } });