Skip to content

Deployment lifecycle: list, preview, rollback, and prune versions #181

Description

@sandros94

celld v0.4.0 now has a clear single-current deployment model: celld deploy moves deploy/current.json, then nodes adopt it in place.

What seems missing is the lifecycle of the immutable versions left behind. Previous deploy/<script>/<version> objects remain in the bucket, but there is no supported way to:

  1. list previous versions;
  2. access one directly without changing the current deployment;
  3. move current back to one for rollback;
  4. safely prune deployments and shared blobs no longer reachable through current or named pointers, queue attachments, or service bindings.

Direct version access might need an explicit contract for stateful applications: whether it runs against the fleet's live cell state or isolated preview state. Cloudflare's version preview URLs, for example, currently exclude Workers implementing Durable Objects. Still, someone picking a rollback version should be able to do so without having to guess whether the version is compatible with the current state of the fleet.

#175 asks for “a supported way to delete one cell”; this request concerns deployment artifacts instead.

Would a first-party version lifecycle like this be in scope? I have no strong preference on the exact CLI or endpoint shape, but I would prefer not to have external tooling guess celld's reachability and state rules

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions