Simplify provisioning queue and add shared filters

This commit is contained in:
2026-10-06 16:56:41 -04:00
parent 36c2907602
commit ad5609cd23
10 changed files with 310 additions and 94 deletions
+5 -1
View File
@@ -3,14 +3,18 @@ import { deploymentListPage } from '$lib/server/provisioning/history.js';
import { requestLifecycle } from '$lib/server/provisioning/index.js';
import { provisioningActions, runtimeActions, type ProvisioningAction, type RuntimeAction } from '$lib/provisioning.js';
import { kickProvisioning } from '$lib/server/pipeline/worker.js';
import { provisioningListSources, provisioningListStatuses } from '$lib/provisioning-list.js';
export function GET({ url }: { url: URL }) {
const params = url.searchParams;
const action = params.get('action');
const status = params.get('status') as typeof provisioningListStatuses[number];
const source = params.get('source') as typeof provisioningListSources[number];
return json(deploymentListPage({
view: params.get('view') === 'history' ? 'history' : 'active',
action: provisioningActions.includes(action as ProvisioningAction) ? action as ProvisioningAction : undefined,
status: params.get('status') === 'attention' ? 'attention' : undefined,
status: provisioningListStatuses.includes(status) ? status : undefined,
source: provisioningListSources.includes(source) ? source : undefined,
server: params.get('server') ?? '',
limit: Number(params.get('limit') ?? 25),
offset: Number(params.get('offset') ?? 0)