1.8 KiB
1.8 KiB
Data Model: Dokploy deployment integration
Entities
-
Repository
- Attributes:
id,name,full_name,clone_url,default_branch(string, e.g.,main),compose_path(string, defaultdocker-compose.yml) - Validation:
clone_urlmust be reachable;compose_pathmust exist in repository at deploy time
- Attributes:
-
Webhook
- Attributes:
id,target_url(Dokploy webhook URL),secret(reference to secret store),events(array, e.g., [push]) - Validation:
target_urlmust be an HTTPS URL;secretmust be present when webhook signs payloads
- Attributes:
-
Deployment
- Attributes:
id,repository_full_name,commit_sha,ref(branch),status(pending,running,success,failed),started_at,finished_at,logs_url - Validation:
commit_sharequired for deterministic deploys; status transitions enforced (pending→running→(success|failed))
- Attributes:
-
Secret
- Attributes:
name,type(ssh_key|token|registry),reference(Dokploy secret id) - Validation: secrets must not be stored in repo; must be referenced by name in Dokploy config
- Attributes:
-
Operator
- Attributes:
username,role(developer|operator|admin),contact(email)
- Attributes:
Relationships
- A
Repositoryhas one or more configuredWebhooks. - A
Webhookcreates zero-or-moreDeploymentruns over time. - A
Deploymentmay reference one or moreSecretentries (e.g.,REPO_DEPLOY_KEY, registry creds).
State Transitions (Deployment)
pending->runningwhen Dokploy picks up the jobrunning->successwhen all services healthyrunning->failedwhen one or more compose services fail to start or healthchecks fail
Notes
- The data model is intentionally lightweight; Dokploy manages most runtime state. These entities are useful for documenting contracts, runbooks, and acceptance tests.