Files
electric-cherry/src/lib/server/settings.ts
T
josh 4fe8613678 Move fleet retention and concurrency controls into Settings
Persist settings in SQLite, import legacy environment values once, and apply changes to cleanup and deployment queues without restarting.

Closes #51
2026-09-27 16:11:45 -04:00

15 lines
641 B
TypeScript

import { validateFleetSettings, type FleetSettings } from '../fleet-settings.js';
import { db } from './db/index.js';
import { FLEET_SETTINGS_KEY } from './db/fleet-settings.js';
export function fleetSettings(): FleetSettings {
const row = db().prepare('SELECT value FROM settings WHERE key = ?').get(FLEET_SETTINGS_KEY) as { value: string };
return JSON.parse(row.value);
}
export function saveFleetSettings(input: unknown): FleetSettings {
const settings = validateFleetSettings(input);
db().prepare('UPDATE settings SET value = ? WHERE key = ?').run(JSON.stringify(settings), FLEET_SETTINGS_KEY);
return settings;
}