There is a lot of common code between the functions ironic.conductor.utils.validate_port_physnets() and ironic.drivers.modules.network.common._get_physnets_by_portgroup(). This change refactors the code, adding a new utility method, get_physnets_by_portgroup_id, which returns the physical networks associated with a portgroup. There should be at most one such physical network, and the presence of multiple will cause PortgroupPhysnetInconsistent to be raised. Change-Id: I8f01dcc5eaa0c8511ce77622e41db88e27791327 Related-Bug: #1666009
Team and repository tags
Ironic
Ironic consists of an API and plug-ins for managing and provisioning physical machines in a security-aware and fault-tolerant manner. It can be used with nova as a hypervisor driver, or standalone service using bifrost. By default, it will use PXE and IPMI to interact with bare metal machines. Ironic also supports vendor-specific plug-ins which may implement additional functionality.
Ironic is distributed under the terms of the Apache License, Version 2.0. The full terms and conditions of this license are detailed in the LICENSE file.
Project resources
- Documentation: https://docs.openstack.org/ironic/latest
- Source: https://git.openstack.org/cgit/openstack/ironic
- Bugs: https://bugs.launchpad.net/ironic
- Wiki: https://wiki.openstack.org/wiki/Ironic
- APIs: https://developer.openstack.org/api-ref/baremetal/index.html
Project status, bugs, and requests for feature enhancements (RFEs) are tracked on Launchpad: https://launchpad.net/ironic
For information on how to contribute to ironic, see https://docs.openstack.org/ironic/latest/contributor