Add configurable server destruction concurrency

This commit is contained in:
2026-10-01 11:29:55 -04:00
parent 30030599d6
commit aa0223c35d
7 changed files with 359 additions and 84 deletions
+6 -3
View File
@@ -2,18 +2,21 @@ export interface FleetSettings {
deployKeepDays: number;
restartConcurrency: number;
createConcurrency: number;
destroyConcurrency: number;
}
export const defaultFleetSettings: FleetSettings = {
deployKeepDays: 7,
restartConcurrency: 1,
createConcurrency: 1
createConcurrency: 1,
destroyConcurrency: 1
};
export const fleetSettingLabels: Record<keyof FleetSettings, string> = {
deployKeepDays: 'Campaign history retention',
restartConcurrency: 'Concurrent restarts',
createConcurrency: 'Concurrent server startups'
createConcurrency: 'Concurrent server startups',
destroyConcurrency: 'Concurrent server destructions'
};
export function validateFleetSettings(input: unknown): FleetSettings {
@@ -30,5 +33,5 @@ export function validateFleetSettings(input: unknown): FleetSettings {
if (key === 'deployKeepDays' && value > 36500) throw new Error('Campaign history retention must be at most 36500 days.');
}
return { deployKeepDays: values.deployKeepDays as number, restartConcurrency: values.restartConcurrency as number,
createConcurrency: values.createConcurrency as number };
createConcurrency: values.createConcurrency as number, destroyConcurrency: values.destroyConcurrency as number };
}