This repository has been archived on 2021-07-22. You can view files and clone it, but cannot push or open issues or pull requests.
stack-ssh-deploy/README.md

58 lines
1.9 KiB
Markdown
Raw Permalink Normal View History

2020-09-23 06:32:50 +00:00
# stack-ssh-deploy
2020-12-26 19:18:23 +00:00
[![Build Status](https://drone.autonomic.zone/api/badges/coop-cloud/stack-ssh-deploy/status.svg?ref=refs/heads/main)](https://drone.autonomic.zone/coop-cloud/stack-ssh-deploy)
2020-09-23 06:32:50 +00:00
Deploy swarm stacks against a SSH based remote docker daemon context.
2020-09-23 06:56:27 +00:00
This is meant to be used as a [Drone plugin](http://plugins.drone.io/).
2020-09-23 06:44:37 +00:00
## Settings
2020-09-25 17:26:21 +00:00
### 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)
2020-09-23 06:50:38 +00:00
- **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
2020-09-27 19:20:17 +00:00
- **networks** (default:): Try and auto-create these networks first
- **rm**: (default: `false`): Remove the stack before deploying it
2020-09-25 17:26:21 +00:00
### Dangerous options, unwise outside CI
2020-09-25 18:07:57 +00:00
- **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
2020-09-23 06:44:37 +00:00
2020-09-23 06:32:50 +00:00
## Example
```yaml
---
kind: pipeline
name: deploy to swarm
steps:
- name: stack deploy
2020-09-25 10:57:09 +00:00
image: decentral1se/stack-ssh-deploy:latest
2020-09-23 06:32:50 +00:00
settings:
2020-09-23 06:50:38 +00:00
stack: mystack
2020-09-23 06:32:50 +00:00
deploy_key:
from_secret: drone_deploy_key
2020-09-27 19:20:17 +00:00
networks:
- proxy
- mail
environment:
DOMAIN: test.example.com
2020-09-23 06:32:50 +00:00
```
2020-09-23 06:44:56 +00:00
## Publishing
2020-09-25 11:30:33 +00:00
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.
2020-09-23 06:56:27 +00:00
2020-09-23 06:44:56 +00:00
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).