57 lines
1.8 KiB
Markdown
57 lines
1.8 KiB
Markdown
# stack-ssh-deploy
|
|
|
|
[![Build Status](https://drone.autonomic.zone/api/badges/autonomic-cooperative/stack-ssh-deploy/status.svg)](https://drone.autonomic.zone/autonomic-cooperative/stack-ssh-deploy)
|
|
|
|
Deploy swarm stacks against a SSH based remote docker daemon context.
|
|
|
|
This is meant to be used as a [Drone plugin](http://plugins.drone.io/).
|
|
|
|
## Settings
|
|
|
|
### Required (no default)
|
|
|
|
- **deploy_key**: SSH private key part for ssh public key authentication
|
|
- **stack**: Name of the stack to be deployed
|
|
|
|
### Optional (with defaults)
|
|
|
|
- **compose** (default: `compose.yml`): compose file to use for deploying
|
|
- **host** (default: `swarm.autonomic.zone`): Host to deploy to (don't include `ssh://`)
|
|
- **port** (default: `222`): SSH port to connect to
|
|
- **user** (default: `drone`): System user to connect via SSH with
|
|
- **networks** (default:): Try and auto-create these networks first
|
|
|
|
### Dangerous options, unwise outside CI
|
|
|
|
- **generate_secrets** (default: `false`): randomly set all `secrets:` found in the
|
|
compose file -- you won't be able to retrieve them afterwards, so you almost
|
|
certainly don't want this for real deployments.
|
|
- **purge** (default: `false`): runs aggresive cleaning up measure to wipe
|
|
deployment afterwards
|
|
|
|
## Example
|
|
|
|
```yaml
|
|
---
|
|
kind: pipeline
|
|
name: deploy to swarm
|
|
steps:
|
|
- name: stack deploy
|
|
image: decentral1se/stack-ssh-deploy:latest
|
|
settings:
|
|
stack: mystack
|
|
deploy_key:
|
|
from_secret: drone_deploy_key
|
|
networks:
|
|
- proxy
|
|
- mail
|
|
environment:
|
|
DOMAIN: test.example.com
|
|
```
|
|
|
|
## Publishing
|
|
|
|
The version can be bumped in the [.drone.yml](./.drone.yml) file. We're sticking with `latest` as we iterate on the code right now.
|
|
|
|
If you push a commit to master, the [Drone config](./.drone.yml) will publish to [Docker Hub](https://hub.docker.com/r/decentral1se/stack-ssh-deploy).
|