Contributor
Omar AbdelSamea

Making FOSSology architecture microservice friendly


Mentors
Klaus Gmeinwieser, Anupam G, Gaurav Mishra, Vasudev
Organization
FOSSology

FOSSology is designed in modular fashion but it certainly does not follow micro-service architecture. If there is a change in an agent's logic, the whole source code has to be built again and installed. Whereas in micro-service architecture, only this agent needs to be built and installed/deployed.

Current Draw backs of installing FOSSology in cluster mode

  • When adding or removing a node, scheduler needs to be restarted.
  • Every node needs to have same set of agents.
  • Because of the current version check mechanism on scheduler, for a single change, the whole code base needs to be redeployed to get new version string.

Project Goal

  • Ability to add one agent to each node for easier updating and scaling.
  • Dynamically adding new nodes without the need to restart or stop the scheduler
  • Kubernetes deployment for easy scaling in or out