gfargo/strut deploy
Deploy Docker Compose stacks to any VPS over SSH with strut — no Kubernetes.
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Stale
- License
- None
Inputs
| name | description | required | default |
|---|---|---|---|
| stack | Stack name (a directory under stacks/ in your project). | yes | — |
| command | strut command to run: release | deploy | ship | health | stop | status. | no | release |
| env | Environment name. Reads .<env>.env (e.g. "prod" → .prod.env). Empty uses .env. | no | "" |
| services | Service profile passed as --services (e.g. full, messaging, ui). | no | "" |
| strict | Pass --strict (fail the release if migrations fail). | no | false |
| dry-run | Pass --dry-run to preview without executing. | no | false |
| args | Extra raw arguments appended to the strut command. | no | "" |
| ssh-key | Private SSH key authorized on the VPS. ALWAYS pass via a secret. | yes | — |
| host | VPS host or IP. Sets VPS_HOST. Optional if your repo config/topology already has it. | no | "" |
| user | VPS SSH user. Sets VPS_USER. | no | "" |
| port | VPS SSH port. Sets VPS_PORT. | no | 22 |
| known-hosts | known_hosts entries for the VPS. If empty, the host key is fetched via ssh-keyscan. | no | "" |
| env-file | Full contents of the .<env>.env file. ALWAYS pass via a secret. Optional. | no | "" |
| strut-version | strut version to install: latest | main | vX.Y.Z. | no | latest |
| working-directory | Project root that contains strut.conf and stacks/. | no | . |
Outputs
no outputs