@celilo/cli 1.9.1 → 1.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -311,6 +311,30 @@ export const V1_HOOKS: ContractHooks = {
|
|
|
311
311
|
inputs: {},
|
|
312
312
|
outputs: {},
|
|
313
313
|
},
|
|
314
|
+
/**
|
|
315
|
+
* Reclaim disk a module's own store has accumulated and has no way to
|
|
316
|
+
* release on its own.
|
|
317
|
+
*
|
|
318
|
+
* Distinct from `on_backup`'s retention, which prunes copies celilo itself
|
|
319
|
+
* made and records. This is for state the module's SERVICE owns and celilo
|
|
320
|
+
* never sees — a registry's package store, a cache, an artifact directory —
|
|
321
|
+
* where the only thing that knows what is superseded is the service.
|
|
322
|
+
*
|
|
323
|
+
* Deliberately not a converge hook: convergence re-asserts a desired state
|
|
324
|
+
* and is safe to run constantly, while this DELETES and its mistakes are not
|
|
325
|
+
* recoverable. So it declares its retention policy in config, supports a dry
|
|
326
|
+
* run, and is expected to be conservative — the celilo-registry sweep never
|
|
327
|
+
* removes the last revision of a release, which is what makes running it
|
|
328
|
+
* unattended defensible.
|
|
329
|
+
*
|
|
330
|
+
* Driven on demand (`celilo module run-hook <module> sweep_revisions`) and,
|
|
331
|
+
* where the store grows without an operator, by a `timer.tick.*`
|
|
332
|
+
* subscription.
|
|
333
|
+
*/
|
|
334
|
+
sweep_revisions: {
|
|
335
|
+
inputs: {},
|
|
336
|
+
outputs: {},
|
|
337
|
+
},
|
|
314
338
|
/**
|
|
315
339
|
* Build-bus upstream publish hook. The executor passes the
|
|
316
340
|
* PublishEvent fields as env vars (CELILO_EVENT_PAYLOAD,
|
package/src/manifest/schema.ts
CHANGED
|
@@ -366,6 +366,7 @@ const LIFECYCLE_HOOK_SCHEMAS = {
|
|
|
366
366
|
reconcile_clients: LifecycleHookSchema.optional(),
|
|
367
367
|
list_peers: LifecycleHookSchema.optional(),
|
|
368
368
|
reconcile_peers: LifecycleHookSchema.optional(),
|
|
369
|
+
sweep_revisions: LifecycleHookSchema.optional(),
|
|
369
370
|
} satisfies Record<HookName, z.ZodTypeAny>;
|
|
370
371
|
|
|
371
372
|
/**
|