<div dir="ltr">Hi all,<div><br></div><div>In magnum, we implement cluster drivers for the different combinations</div><div>of COEs (Container Orchestration Engines) and Operating Systems. The</div><div>reasoning behind it is to better encapsulate driver-specific logic and to allow</div><div>operators deploy custom drivers with their deployment specific changes.</div><div><br></div><div>For example, operators might want to:</div><div>* have only custom drivers and not install the upstream ones at all</div><div>* offer user only some of the available drivers</div><div>* create different combinations of  COE + os_distro</div><div>* create new experimental/staging drivers </div><div><br></div><div>It would be reasonable to manage magnum's cluster drivers as different</div><div>packages, since they are designed to be treated as individual entities. To do</div><div>so, we have two options:</div><div><br></div><div>1. in-tree:  remove the entrypoints from magnum/setup.cfg to not install them </div><div>by default. This will require some plumbing to manage them like separate python</div><div>packages, but allows magnum's development team to manage the official drivers</div><div>inside the service repo.</div><div><br></div><div>2. separate repo: This option sounds cleaner, but requires more refactoring and</div><div>will separate more the drivers from service, having significant impact in the</div><div>development process.</div><div><br></div><div>Thoughts?</div><div><br></div><div>Spyros</div></div>