This repository has been archived on 2020-05-08. You can view files and clone it, but cannot push or open issues or pull requests.
dokku-ansible-playbook/README.md

54 lines
1.5 KiB
Markdown
Raw Normal View History

2020-03-19 00:13:54 +00:00
# dokku-ansible-playbook
Run ansible playbooks during deployment.
This plugin can be useful when you need to provision your server before or after a deployment of your application (or on [any hook](https://github.com/dokku/dokku/blob/master/docs/development/plugin-triggers.md), just raise an issue and let's add it) and you prefer to use Ansible instead of Bash. For example, you make use of the [ansible-dokku](https://github.com/dokku/ansible-dokku/) roles.
2020-03-19 00:13:54 +00:00
## Requirements
* dokku 0.19.13+
* Debian based system (uses `apt` package manager for installing dependencies)
2020-03-19 00:13:54 +00:00
## Installation
```shell
$ dokku plugin:install https://github.com/decentral1se/dokku-ansible-playbook.git
$ dokku plugin:install-dependencies
2020-03-19 00:13:54 +00:00
```
## Usage
2020-03-19 22:29:59 +00:00
All files must be placed within the `ansible` folder of your git repository.
2020-03-19 00:13:54 +00:00
2020-03-19 00:43:41 +00:00
* `requirements.yml`: what role dependencies to download before running your plays.
* `pre-deploy.yml`: play run before a deployment
* `post-deploy.yml`: play run after a deployment
2020-03-19 00:55:49 +00:00
Notes:
2020-03-19 00:55:49 +00:00
* Everything is copied into `$DOKKU_LIB_ROOT/data/ansible/$APP` on the `post-extract` hook.
* Dokku will make sure that your Ansible plays are run on the right hook against the Dokku server localhost.
2020-03-19 22:29:59 +00:00
2020-03-19 00:55:49 +00:00
## Example
2020-03-19 22:29:59 +00:00
### ansible/requirements.yml
2020-03-19 00:55:49 +00:00
```yaml
---
- src: dokku_bot.ansible_dokku
version: v2020.3.15
```
2020-03-19 22:29:59 +00:00
### ansible/pre-deploy.yml
2020-03-19 00:55:49 +00:00
```yaml
---
- hosts: all
tasks:
- name: Create foobar group
group:
name: foobar
system: true
state: present
```