Skip to content
This repository has been archived by the owner on Jan 23, 2023. It is now read-only.

Community forum playbooks and configs.

License

Notifications You must be signed in to change notification settings

EGI-Federation/community.egi.eu

Repository files navigation

Build Status Maintainability

EGI Community Forum

This repository contains the code necessary to deliver the EGI Community Forum. This is a web forum based on discourse

The repository is organised into :

  • Ansible playbook and configuration data for deploying the forum.
  • Scripts for setting up the categories and seed content (using the Discourse API)
  • Tests for checking whether the setup complies with security, style and content policies.

Deployment

Deployment starts from scratch and results in a seeded community discussion forum. Only an ssh connection is needed, preferably with a non-root user which has sudo rights on the forum host. The host is in the forum group in the inventory file. Tasks applied to this group pick up variables from the vars/community.egi.eu.yml file, because that is how excellent Ansible is.

The playbook uses a single role - AAROC.discourse-sso however this role has dependencies. Before making or proposing changes to this role, please consider what the dependencies do to provide docker and nginx.

Continuous Delivery

If you are the maintainer of the service, you need to run the playbook with the right variables.

  1. Ensure that you have the roles locally : * ansible-galaxy install AAROC.discourse-sso * ansble-galaxy install dev-sec.ssh-hardening
  2. Ensure you have your vars set up in vars/<forum_host_name>.yml
  3. Check the validity of the certificate and private keys in files/etc/ssl
  4. Check the inventory.

If all that is ok, run the playbook, or get your favourite CI tool to do it : ansible-playook -i inventory community.egi.eu.yml

Testing

The tests directory contains the tests that we expect the service, server and machine to pass. They contain tests for the ssh connection, nginx server configuration and some content.

Authors

See the authors file