+----------------------------+ +-------------------+ +---------------------+
| | | | | |
| External Service | deployment hook | Provider API | | API/Relay API |
| +-------------------> * map deployment +----> * create deployment |
+------------------+---------+ | | | |
| +-------------------+ +-----+---------------+
| |
| |
| | send deployment
| |
| |
| +-------------------v---------------+
| git clone/pull/fetch | |
+----------------------------------------> Deployment Runner |
| * has access to git (via secrets) |
+---------------------+ | * has access to docker registry |
| | | * knows swarm master to deploy to |
| Docker Swarm Master | schedule | * is allowed to schedule services |
| <------------+ |
+---------------------+ +-----------------------------------+
Graph drawn using: http://asciiflow.com/
See the swagger/swagger.yaml
(View/Edit using Swagger Editor)