semi-automatic deployment and configuration management

We need an efficient process for deploying and managing different configurations across multiple BBB-Server(clusters)

Feature wishlist

  • documented process for (semi-)automatic setup of new servers
  • management of different configuration-templates

use-case: new server setup

  • process

    • we need a new server in our cluster and want to install Fairkom-BBB
    • we setup the server with a base system
    • we run script1 to install upstream-BBB-stable (to working state)
    • we run script2 to install this project (base settings, working state)
    • we run script3 to install our configuration (default presentations, shared notes, etc..)
  • The scripts apply server-specific configuration like domain-name etc. automatically.

  • We want to be able to have script3a, script3b, ... for different configurations to fit our needs.

use-case: change configuration

We want to be able to switch the configuration after the initial setup.

  • process:

    • we have a server that is already set up with the Fairkom-BBB
      • the server was configured with script3a
    • we run script3b to switch the configuration
    • the old config is entirely removed/overwritten and the server is in the same state as if it was set up with script3b in the first place
      • Logfiles and recordings are preserved
  • we can do this repeatedly without reinstalling the server

use-case: manage multiple configurations

We want to have a repository for our different configurations and be able to see differences, make revertable changes, create new configurations from other ones and pick changes specific changes to apply to other configurations.

  • implementation
    • use git for holding the configurations
    • use separate branches for different config-templates/bbb-versions
    • have script3 use a user-provided branch for deployment of the configuration

WIP to be continued...