Skip to content

If you're going to deploy discourse, best you deploy it with federated login

License

Notifications You must be signed in to change notification settings

AAROC/discourse-sso

Repository files navigation

Build Status

DOI

Discourse with SSO

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.

Requirements

  1. web server with proxy to the rails app inside the Discourse container
  2. Flask python microserver framework

Role Variables

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

Dependencies

See meta/main.yml for the role dependencies.

Example Playbook

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 }

License

Apache 2.0

Author Information

Bruce Becker (CSIR Meraka Institute)