kann deployed werde (zum ersten Mal)

This commit is contained in:
2025-08-19 13:43:37 +00:00
parent b3b411db1a
commit e7e6cb97ca
12 changed files with 453 additions and 92 deletions

View File

@@ -1,38 +1,41 @@
import { MongoClient } from 'mongodb';
import dotenv from 'dotenv';
dotenv.config();
const MONGO_ROOT_USER = process.env.MONGO_ROOT_USER;
const MONGO_ROOT_PASSWORD = process.env.MONGO_ROOT_PASSWORD;
let MONGO_URI = process.env.MONGO_URI || 'mongodb://localhost:27017';
/* if (MONGO_ROOT_USER && MONGO_ROOT_PASSWORD) {
const uriParts = MONGO_URI.split('://');
if (uriParts.length === 2) {
const protocol = uriParts[0];
const rest = uriParts[1];
MONGO_URI = `${protocol}://${encodeURIComponent(MONGO_ROOT_USER)}:${encodeURIComponent(MONGO_ROOT_PASSWORD)}@${rest}`;
}
const MONGOHOST = process.env.MONGOHOST || 'localhost'
const MONGOPORT = process.env.MONGOPORT || 27017
const MONGOAUTH = process.env.MONGOAUTH || false
const MONGOUSRP = process.env.MONGOUSRP || ''
const MONGOBASE = process.env.MONGOBASE || 'sensor_data'
let MONGO_URL = 'mongodb://'+MONGOHOST+':'+MONGOPORT; // URL to mongo database
if (MONGOAUTH === 'true') {
MONGO_URL = 'mongodb://'+MONGOUSRP+'@' + MONGOHOST + ':' + MONGOPORT + '/?authSource=admin'; // URL to mongo database
}
*/
const DB_NAME = MONGOBASE
const DB_NAME = process.env.DB_NAME || 'sensor_data';
let db, entriesCollection, usersCollection, prop_fluxCollection, propertiesCollection;
let db, usersCollection, prop_fluxCollection, propertiesCollection;
let client = null;
export async function initMongo() {
const client = new MongoClient(MONGO_URI);
const client = new MongoClient(MONGO_URL);
await client.connect();
db = client.db(DB_NAME);
entriesCollection = db.collection('entries');
usersCollection = db.collection('users');
prop_fluxCollection = db.collection('prop_flux');
propertiesCollection = db.collection('properties')
return { db, entriesCollection, usersCollection };
return { db, usersCollection, prop_fluxCollection, propertiesCollection};
}
export const clientClose = async () => {
if (client) {
client.close()
}
}
export function getCollections() {
return { db, entriesCollection, usersCollection, prop_fluxCollection };
return { db, usersCollection, prop_fluxCollection, propertiesCollection};
}
export const update_pflux = async(sn, doc) => {