feat: start action on boot

This commit is contained in:
izzy
2025-11-20 15:36:17 +00:00
parent 53a74a7279
commit 31f4665d35
3 changed files with 13 additions and 6 deletions

View File

@@ -151,6 +151,7 @@ export class MaintenanceModule {
); );
await this.maintenanceWorkerService.logSecret(); await this.maintenanceWorkerService.logSecret();
void this.maintenanceWorkerService.runAction(state.action);
} }
} }

View File

@@ -47,8 +47,8 @@ export class MaintenanceWorkerController {
@Post('admin/maintenance') @Post('admin/maintenance')
@MaintenanceRoute() @MaintenanceRoute()
async setMaintenanceMode(@Body() dto: SetMaintenanceModeDto): Promise<void> { setMaintenanceMode(@Body() dto: SetMaintenanceModeDto): void {
await this.service.runAction(dto); void this.service.setAction(dto);
} }
@Get('admin/maintenance/backups/list') @Get('admin/maintenance/backups/list')

View File

@@ -185,6 +185,14 @@ export class MaintenanceWorkerService {
} }
} }
async setAction(action: SetMaintenanceModeDto) {
this.setStatus({
action: action.action,
});
await this.runAction(action);
}
async runAction(action: SetMaintenanceModeDto) { async runAction(action: SetMaintenanceModeDto) {
switch (action.action) { switch (action.action) {
case MaintenanceAction.Start: case MaintenanceAction.Start:
@@ -225,7 +233,7 @@ export class MaintenanceWorkerService {
} }
} }
async endMaintenance(): Promise<void> { private async endMaintenance(): Promise<void> {
const state: MaintenanceModeState = { isMaintenanceMode: false as const }; const state: MaintenanceModeState = { isMaintenanceMode: false as const };
await this.systemMetadataRepository.set(SystemMetadataKey.MaintenanceMode, state); await this.systemMetadataRepository.set(SystemMetadataKey.MaintenanceMode, state);
@@ -253,11 +261,9 @@ export class MaintenanceWorkerService {
}), }),
); );
this.setStatus({ await this.runAction({
action: MaintenanceAction.End, action: MaintenanceAction.End,
}); });
await this.endMaintenance();
} }
async listBackups(): Promise<Record<'backups' | 'failedBackups', string[]>> { async listBackups(): Promise<Record<'backups' | 'failedBackups', string[]>> {