andreaswachs/bachelors-project

[SERVER] Server configuration expansion

Closed this issue · 0 comments

What needs to be done?

Servers needs to be run in two different modes:

  • Leader
  • Follower

Hub mode is for the primary server, that will know about other servers and can distribute labs between them.

Minion mode is for the servers that will deploy labs onto their machine from other servers.

Crucially, minion servers are not allowed to propagate labs to other servers.

Acceptance criteria

  • Servers are aware what mode they are set to run in
  • Servers can be configured to run in hub or minion mode
  • Leader servers can know about other Follower servers
  • API endpoint to query if a server is a Leader or Follower
  • Servers that are hubs can propagate/aggregate API calls to include results from other servers