Open infrastructure for our server
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
southerntofu 959f18a69d Update zola in roles 1 year ago
roles@b05f13599f Update zola in roles 1 year ago
.gitignore Start joinjabber infrastructure 2 years ago
.gitmodules Separate roles folder into dedicated submodule 2 years ago
LICENCE Better README and AGPLv3 license 2 years ago Separate roles folder into dedicated submodule 2 years ago
config.yml Shorthand profiles for chatbridge config 1 year ago More debugging and update roles 1 year ago

JoinJabber infrastructure

In this repository, you will find everything we used to setup the JoinJabber infrastructure. This repository contains:

  • a central configuration file config.yml, where everything is configured
  • a script to apply these settings on a server (run as root)
  • a roles submodule containing Ansible recipes to implement the services

Setup and configuration

This repository should be cloned with submodules, for example git clone --recursive The documentation can be found in roles/, which will not exist if you forgot to clone submodules. In that case, you can run git submodule update --init --recursive to initialize and download the submodules.


A script is provided to make deploying easier. It's intended to be run as root from the server itself, and optionally accepts positional arguments representing a list of services to (re)configure, instead of following the services list defined in the configuration file:

# # Setup the server according to config.yml
# ./
# # Only reconfigure webserver
# ./ webserver

Copyleft (license)

This project is protected by AGPLv3 license. We believe the fruit of human labor should belong to humanity as a whole, and privatization of resources and knowledge is harmful. If you don't have time to read the full license, you may:

  • redistribute this project with or without further modification, under the same license
  • use this project to serve your personal needs, without restriction (if the user-facing services are used by anyone else but you, it is not considered personal usage and falls under the next category)
  • use this project to help/serve other persons, under the condition that you share every modification publicly under the same license