Added a new package ( io.murano.lib.networks.Neutron) to handle networking via Neutron
The package introduces a class 'NewNetwork' (io.murano.lib.networks.neutron.NewNetwork)
This class is capable of the following:
- Create a new Network (L2 segment)
- Use NetworkExplorer class to allocate an available CIDR
- Create a new Subnet (L3 segment) in the created Network with the allocated CIDR
- Use NetworkExplorer class to locate an available router
- Use NetworkExplorer class to detect the default DNS nameserver
- Uplink the created subnet to the located router
Also, as this class extends io.murano.resources.Network, it implements the addHostToNetwork method
The implementation creates a Neutron Port and connects that port to a created network and intance
This commit also modifies the environment-creation logic of the API, allowing to add default networks
to the Environment object.
This is a temporary solution: in future the instantiation of this object(s) should be done in MuranoPL
This commit concludes the minimum set of functionality needed to implement AdvancedNetworking
in 0.4.x feature set.
Closes-bug: #1308921
Change-Id: I885620099995b0d402a23def3ff428fb902973d2