blob: 49ca21682f2308f46622afcef229599ea9a1e0e4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
# Ship v2 Rebuild Progress
Tracking rebuilding ship for agent-first JSON interface.
## Status: READY FOR TESTING
## Completed
- [x] Design docs (SHIP_V2.md, SPEC.md)
- [x] JSON output types and helpers (`internal/output`)
- [x] Auto-detection logic (`internal/detect`)
- [x] Error codes and exit codes
- [x] New CLI structure (`ship [PATH]` as primary)
- [x] Deploy orchestration with placeholder implementations
## Current Phase: Subcommand Implementations
- [x] Static site deploy (rsync + Caddyfile)
- [x] Docker deploy (build + systemd + Caddy)
- [x] Binary deploy (scp + systemd + Caddy)
- [x] Health check implementation
- [x] TTL support (server-side)
- [x] Port allocation (server-side)
## Upcoming
- [ ] Testing with real deploys
- [ ] Remove v1 code after validation
## Wiring
- v2 is now the default interface
- Set `SHIP_V1=1` to use legacy v1 (human-formatted output)
## Completed Recently
- [x] `ship list` - enumerate all deploys from /etc/ship/ports and /var/www
- [x] `ship status NAME` - show deploy status, port, type, TTL
- [x] `ship logs NAME` - show journalctl logs (or Caddy logs for static)
- [x] `ship remove NAME` - full cleanup of all deploy artifacts
## Completed Recently
- [x] TTL cleanup timer (server-side systemd timer)
- [x] `ship host init` with JSON output
- [x] Docker + Caddy installation
- [x] Cleanup script for expired TTL deploys
## Commits
- `5b88935` feat(v2): add output and detect packages
- `8094639` feat(v2): add CLI structure and deploy orchestration
---
## Notes
- Branch: `agent-mode`
- Keep v1 code for reference until v2 is working
- Test with real deploys before merging to main
|