factory.py 737 B

1234567891011121314151617181920
  1. # Copyright 2025 Cloudbase Solutions Srl
  2. # All Rights Reserved.
  3. from coriolis.osmorphing.netpreserver import ifcfg
  4. from coriolis.osmorphing.netpreserver import interfaces
  5. from coriolis.osmorphing.netpreserver import netplan
  6. from coriolis.osmorphing.netpreserver import nmconnection
  7. NET_PRESERVERS = [netplan.NetplanNetPreserver,
  8. nmconnection.NmconnectionNetPreserver,
  9. ifcfg.IfcfgNetPreserver,
  10. interfaces.InterfacesNetPreserver]
  11. def get_net_preserver(osmorphing_tool):
  12. for net_preserver_class in NET_PRESERVERS:
  13. net_preserver = net_preserver_class(osmorphing_tool)
  14. if net_preserver.check_net_preserver():
  15. return net_preserver_class
  16. return None