| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
For binary and static deployments, .ship/service and .ship/Caddyfile are
now written to the local working directory (similar to git deployments)
instead of being regenerated on every deployment.
- On initial deployment, create local .ship/ directory with generated configs
- On subsequent deployments, upload from local .ship/ files
- Caddyfile is never regenerated, preserving custom routes
- Systemd service is regenerated only when --memory, --cpu, or --args change
This prevents custom Caddyfile routes from being overwritten and makes
binary deployment workflow consistent with git deployment workflow.
|
| |
|
|
|
|
|
|
|
|
| |
- Add ValidateName() enforcing ^[a-z][a-z0-9-]{0,62}$ on all entry points
- Tighten sudoers to restrict cp sources/destinations and chown targets
- Scope git safe.directory to www-data user only (preserves CVE-2022-24765)
- Add www-data to git group and caddy to www-data group for fcgiwrap
- Fix vanity import template to use orig_uri placeholder
- Restart (not reload) services after group changes
- Add name validation to env subcommands and deploy_cmd
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New deployment model where projects start with a git remote on the VPS.
Pushing to the remote triggers automatic docker build and deploy via
post-receive hooks. The base domain serves Go vanity imports and git
HTTPS cloning via Caddy + fcgiwrap.
- Add `ship init <name>` command to create bare repos and .ship/ config
- Add `ship deploy <name>` command for manual rebuilds
- Extend `ship host init --base-domain` to set up Docker, git user,
fcgiwrap, sudoers, and vanity import infrastructure
- Add git-app and git-static types alongside existing app and static
- Update remove, status, logs, restart, list, and config-update to
handle new types
|
|
|
Restructure CLI files to follow idiomatic cobra layout:
- main.go: minimal entry point
- root.go: command definition, flags, and subcommand wiring
- deploy.go: all deploy implementation
|