summaryrefslogtreecommitdiffstats
path: root/cmd/ship/deploy_impl_v2.go
Commit message (Collapse)AuthorAgeFilesLines
* Preserve existing Caddyfiles on redeployClawd7 hours1-35/+43
| | | | | | | Don't overwrite Caddyfile if it already exists. This preserves manual customizations (NIP-05 routes, custom headers, etc.). First deploy generates Caddyfile, subsequent deploys leave it alone.
* Fix port collision bug, add --container-port flagClawd7 hours1-17/+28
| | | | | | | | | | | | Port allocation: - Use atomic flock-based allocation via /etc/ship/next_port - Prevents race conditions when multiple deploys run concurrently - Each app still gets its port stored in /etc/ship/ports/<name> Docker container port: - Add --container-port flag (default 80) - Template now uses {{.ContainerPort}} instead of hardcoded 80 - Supports containers that listen on 8080, 3000, etc.
* fix: set ownership before rsync for Docker deployClawd44 hours1-0/+7
|
* fix: split sudo commands to fix ownership for rsync uploadClawd44 hours1-2/+8
|
* feat(v2): implement deploy flowsClawd45 hours1-0/+365
- deploy_impl_v2.go: full implementations for static, docker, binary deploys - Static: rsync + Caddyfile generation + reload - Docker: rsync + build + systemd unit + env file + Caddyfile - Binary: scp + systemd unit + service user + env file + Caddyfile - Port allocation: server-side in /etc/ship/ports/ - TTL: server-side in /etc/ship/ttl/ - Health checks: HTTP GET with 30s retry loop All deploy types now functional (pending Go compilation test)