Deploy swarm stacks against a SSH based remote docker daemon context
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.
Go to file
3wc 1206a21e8f Debugging 2020-09-25 20:50:54 +02:00
.drone.yml Use latest tag instead 2020-09-25 12:43:41 +02:00
Dockerfile Fix bash version 2020-09-25 12:55:10 +02:00
LICENSE Bootstrapping stack deploy plugin 2020-09-23 08:32:50 +02:00
README.md Add secrets field doc 2020-09-25 20:12:06 +02:00
plugin.sh Debugging 2020-09-25 20:50:54 +02:00

README.md

stack-ssh-deploy

Build Status

Deploy swarm stacks against a SSH based remote docker daemon context.

This is meant to be used as a Drone plugin.

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

Dangerous options, unwise outside CI

  • secrets: (default: {}): names of secrets to generate and store in the swarm. This field is used in conjuction with generate_secrets (see below).
  • 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

---
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

Publishing

The version can be bumped in the .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 will publish to Docker Hub.