feat(schedules): make every scheduled action available on Skipper (#1141)

Collapse the Admiral carveout that restricted restart, prune, auto_backup,
auto_stop, auto_down, and auto_start schedules to the Admiral variant.
Scheduled Operations stays at Skipper+ (paid). The action picker now lists
every supported operation for any paid admin, and the scheduler runner
executes every action on either variant.
This commit is contained in:
Anso
2026-05-21 16:42:41 -04:00
committed by GitHub
parent 8d1304b0df
commit c491d309c1
8 changed files with 55 additions and 77 deletions
-9
View File
@@ -59,15 +59,6 @@ export const requireNodeProxy = (req: Request, res: Response): boolean => {
return true;
};
/** Scheduled task actions a Skipper-tier license may create and view. All other actions are Admiral-only. */
export const SKIPPER_SCHEDULED_ACTIONS: ReadonlySet<string> = new Set(['update', 'scan', 'snapshot']);
/** Tier gate for scheduled tasks: SKIPPER_SCHEDULED_ACTIONS require Skipper+, everything else requires Admiral. */
export const requireScheduledTaskTier = (action: string, req: Request, res: Response): boolean => {
if (SKIPPER_SCHEDULED_ACTIONS.has(action)) return requirePaid(req, res);
return requireAdmiral(req, res);
};
/**
* Tier gate for SSO providers. The split is by delivery (turnkey vs self-configured), not by
* protocol: Custom OIDC stays free so self-hosters can wire any OIDC IdP (Authelia, Keycloak,