mrnicegyu11 / osparc-deployment-agent

osparc;deployer;auto-deployment

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Auto-deployment agent

The deployment agent continuously deploy (CD) a docker stack inside a running docker swarm provided a Portainer instance is available.

It is a configurable tool that can monitor any number of git repositories for changes - complete repo or specific files -, generate using a configurable command line call a docker stack file and finally monitor any number of docker repositories referenced by the generated stack file. When changes are detected any number of portainer instances will be updated to (re-)deploy the stack file. Optionally the tool can also send a configurable notification to an external service (currently only Mattermost is supported).

Configuration

A sample configuration file for the auto deployment agent is visible in here.

Deployment

The auto deployment agent may be deployed locally provided a configuration file named deployment_config.yaml is provided at the same level as the Makefile. If none is provided the test-configuration will be automatically copied (which automatically deploys the simcore core platform with some default values).

Run tests locally

make devenv
. .venv/bin/activate
make install-dev
make test-dev-unit

Run system test locally:

## Assuming docker swarm is running
make test-dev-system
docker stack rm deployment-agent

About

osparc;deployer;auto-deployment

License:MIT License


Languages

Language:Python 84.7%Language:Makefile 7.1%Language:Shell 5.7%Language:Dockerfile 2.4%