Automation that makes applications easier to deploy and management
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
group_vars/all
roles
.gitignore
Makefile
README.md
ansible.cfg
ansible.mk
deploy.yml
inventory.ini
maintenance.yml

README.md

forthebadge

Requirements

Client

  • Mac / Linux
  • Ansible

Server

  • Ubuntu Linux
  • SSH access

Configuration

Edit variables:

  • group_vars/all/*
  • roles/**/vars/*

Edit inventory file:

  • inventory.ini

Add vault_pass.txt file with strong password to root folder of project:

  • vault_pass.txt

Deploy

Edit playbook deploy.yml and check only required roles and hosts.

Start process:

make deploy

Maintenance

Edit playbook maintenance.yml and check only required hosts.

Examples:

Upgrade apt software:

make common-upgrade

Reboot server:

make common-reboot

Encrypt secrets in file group_vars/all/vault.yml:

make encrypt

Decrypt secrets:

make decrypt

Start, stop or upgrade mail server:

make mail-up
make mail-down
make mail-upgrade

Pull or push mail server files from server using rsync module:

make mail-pull
make mail-push

All roles use docker-compose apps.