User story #4928
closedAllow splitting Rudder into independent role-based entities
Description
We want to be able to install different Rudder server part on different machine.
This is a the meta-ticket above #4654, that overlook all the part (packaging, but also inventory update, web-app new information to display, updates on system techniques, etc).
For now, we identified at least 4 parts for the server:
- the main Rudder web application (with user interface)
- the application that handles inventories and store them in our LDAP backend
- the LDAP backend
- the postgres backend
There is also the old "relay server" role.
So, we decided to add a "role" attribute on a node description. It will be a list of all the roles the node has.
Roles will be know based on the presence of file in /opt/rudder/etc/server-roles.d
The will be added in node's inventory in the <RUDDER><SERVER_ROLES><SERVER_ROLE> tag.
The then will be available in a node attribute as a list (serverRoles).
An empty list of server roles means that we are dealing with a simple node.