46 lines
1.1 KiB
JavaScript
46 lines
1.1 KiB
JavaScript
const fs = require('fs');
|
|
const path = require('path');
|
|
|
|
const CANONICAL_SECRETS_FILE = '/Users/bingshuolingdianyuanhe/Documents/guanghulab-local-secrets/video-ai-system.env';
|
|
|
|
function loadEnvFile(file) {
|
|
if (!file || !fs.existsSync(file)) return false;
|
|
|
|
const content = fs.readFileSync(file, 'utf8');
|
|
for (const line of content.split(/\r?\n/)) {
|
|
const trimmed = line.trim();
|
|
if (!trimmed || trimmed.startsWith('#')) continue;
|
|
|
|
const eq = trimmed.indexOf('=');
|
|
if (eq <= 0) continue;
|
|
|
|
const key = trimmed.slice(0, eq).trim();
|
|
const value = trimmed.slice(eq + 1).trim();
|
|
if (!key || !value) continue;
|
|
|
|
if (!process.env[key]) process.env[key] = value;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
function loadVideoAiEnv(localEnvPath = path.resolve(__dirname, '../.env')) {
|
|
const loaded = [];
|
|
const files = [
|
|
process.env.VIDEO_AI_SECRETS_FILE,
|
|
CANONICAL_SECRETS_FILE,
|
|
localEnvPath,
|
|
];
|
|
|
|
for (const file of files) {
|
|
if (loadEnvFile(file)) loaded.push(file);
|
|
}
|
|
|
|
return loaded;
|
|
}
|
|
|
|
module.exports = {
|
|
CANONICAL_SECRETS_FILE,
|
|
loadVideoAiEnv,
|
|
};
|