mgr/cephadm: prepare schedule.py for per-service-type host filtering
Prepare schedule.py for per-service-type host filtering based on allowed
host addresses/networks. Add a new HostSelector protocol type to the
module defining what the filtering interface looks like.
This interface is intended allows CephService classes to "take over" the
network based filtering of nodes prior to placement and customize the
behavior of this step in cephamd's placement algorithm.
Note that the type must be passed in to the HostAssignment class as an
optional argument. If nothing is passed the class behaves as it did
before.
Signed-off-by: John Mulligan <jmulligan@redhat.com>
(cherry picked from commit
e3a3334f2ccf46c436ee61db14378629b1e72df8)
Conflicts:
src/pybind/mgr/cephadm/schedule.py