This is a role for deploying Discourse with federated login. Discourse uses docker to run the application in a container, and has a custom script for delpoying the database and supporting services on the host machine. This script launcher
is used by the role.
The SAML configuration uses DiscourseSSO, which in turn uses the Flask microservice framework.
- web server with proxy to the rails app inside the Discourse container
- Flask python microserver framework
Variables are used to tune the Rails application that runs Discourse. These are in a template, and sensible defaults are set in the defaults/main.yml
file. However, not all variables can have sensible defaults (such as email addresses), since your instance will be special ❄️. You should set them them accordingly in your playbook or in vars/main.yml
. See the Ansible documentation on variables for how Ansible deals with variable precendence.
db_shared_buffer_size
unicorn_workers
smtp_address
smtp_port
smtp_username
See meta/main.yml
for the role dependencies.
Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
- hosts: discourse-servers
roles:
- { role: AAROC.discourse-sso, launch: true }
Apache 2.0
Bruce Becker (CSIR Meraka Institute)