ce-deploy
A set of Ansible roles and wrapper scripts to deploy (web) applications.
Overview
The “stack” from this repo is to be installed on a “deploy” server/runner, to be used in conjonction with a CI/CD tool (Jenkins, Gitlab, Travis, …). It allows the deploy steps for a given app to be easily customisable and to be stored alongside the codebase of the project. When triggered from a deployment tool, the stack will clone the codebase and “play” a given deploy playbook from there.
Install
The stack only gets tested on Debian Linux, but should run on any Linux distribution, as long as Ansible >=2.9 is present. You can install either:
More installation instructions can be found here.
Usage
While you can re-use/fork roles or call playbooks directly from your deployment tool, it is recommended to use the provided wrapper scripts, as they will take care of setting up the needed environments.
Roles
Ansible roles and group of roles that constitute the deploy stack.
- Sync roles - roles that sync data/assets between environments.
- “Meta” - roles that bundles other individual roles together for tackling common use cases.
- Data backups - generate backups for each build.
- Cron - roles to generate cron entries.
- Code deployment - roles managing the codebase: deployment, symlinks, composer steps, …
- CLI Tools - roles to install app-specific cli tool and utilities (Drush, cachetool, …)