ansible-rookeries/README.md

106 lines
3.4 KiB
Markdown

Ansible Rookeries
=================
An Ansible role that acts as a companion to the Rookeries project. The goal of this role is to make deployment of
Rookeries simple. Ideally Rookeries even as a Python WSGI app with this role, should be easier to setup than Wordpress.
This role is a work-in-progress as Rookeries itself is heavily under development.
Requirements
------------
- aptitude or python-apt (required by apt tasks)
- python > 2.5 (required by ini_file tasks)
- Ansible >= 2.0
This role is designed to work against a modern Ubuntu system. (Tested on Ubuntu 13.10 and 14.04) It should
theoretically work on older versions of Ubuntu or Debian based systems.
Example Playbook
----------------
The simplest way to include the role in your playbook is to base it off the below configuration. The crucial
part is to configure the rookeries_app_config and the app_nginx_hostname (inherited from the nginx-uwsgi-supervisor
role).
- hosts: servers
sudo: yes
vars:
my_rookeries_app_config:
rookeries_environment_name: ...
...
roles:
- role: ansible-rookeries
rookeries_app_config: "{{ vagrant_rookeries_app_config }}"
rookeries_db: "{{ rookeries_db_setup }}"
rookeries_environ_type: prod
rookeries_package_path: "{{ rookeries_package }}"
rookeries_app_hostname: rookeries.org
*TODO: Add in section for description of symlink enabled deployments.*
Role Variables
--------------
*TODO: A description of newer role variables for version number and app name*
- rookeries_db:
- This configures database soecific inforaation
- keys:
- db_name:
- The name of the database to store info in.
- username:
- The database username for the above specified database.
- password:
- The database username for the above specified database.
- host:
- The hostname of the CouchDB database server.
- Default: localhost
- port:
- The port of the CouchDB database server.
- Default: 5984
- rookeries_app_name:
- Configures the unique name of the rookeries app.
- Default: rookeries
- rookeries_app_hostname:
- Configures the hostname of site (https://my.rookeries_site.net) serving the rookeries app.
- Default: localhost
- rookeries_environ_type:
- The mode of the setup. Setting to "dev" enables the use of a SMTP fake server to help with development.
- Default: dev
- rookeries_app_config:
- Application specific configuration for running rookeries
This role depends on the nginx_uwsgi_supervisor role, and hence reuses the variables provided by that role. See the
[Ansible Galaxy role page] (https://galaxy.ansible.com/list#/roles/2637) for details.
Dependencies
------------
- nginx_uwsgi_supervisor
- Setup common NGINX, UWSGI and Supervisor infrastructure.
- Repository: https://bitbucket.org/dorianpula/ansible-nginx-uwsgi-supervisor
- Ansible Galaxy: https://galaxy.ansible.com/list#/roles/2637
License
-------
AGPL v3
Author Information
------------------
Dorian Pula
- twitter: @dorianpula
- email: dorian.pula at amber-penguin.software.ca
- www: http://amber-penguin-software.ca
This role is a spin-off of the technology developed for the [Rookeries project] (http://rookeries.org/)
Repositories
------------
- Main: https://bitbucket.org/dorianpula/ansible-rookeries