Specs/Architecture
System note1 of 5 in section

Spec: EasyPanel Provider

EasyPanel provider capability contract and ownership rules.

Spec: EasyPanel Provider

Date: 2026-09-27 Status: In Review

Current implementation

shippercli/provider-easypanel uses the EasyPanel API to manage an owned project, application service, databases, queue workers, cron scheduler, and daemon services. Queue workers and daemons are represented as dedicated App services; cron entries are represented as scripts in a managed Box service. Provider configuration can also apply App resource limits and reconcile owned service mounts.

Capability state

Capability State Limitation
App deployment Supported Source and deployment settings use EasyPanel API procedures.
Databases Supported Managed database services are ownership-marked and cleaned up safely.
Queue workers and daemons Supported Each workload is a separately managed App service.
Cron Supported Requires a Git-backed source and uses a managed Box scheduler.
Resource limits Supported Applied from provider configuration to the managed App service.
Service mounts Supported Mounts are reconciled by index and removed with the owned service.
Logs Partial Requires EasyPanel log aggregation.
Rollback Unsupported No safe public rollback mutation is exposed.
Previews Partial Profile-specific projects and domains are supported, but automated preview cleanup is not implemented.

Safety requirements

  • Workload services must carry the Shipper ownership marker and project marker.
  • Destroy must refuse to remove a workload without its matching ownership marker.
  • Unrelated EasyPanel services must never be removed.