diff options
author | Monty Taylor <mordred@inaugust.com> | 2016-04-02 09:09:54 -0500 |
---|---|---|
committer | Monty Taylor <mordred@inaugust.com> | 2016-04-02 09:09:54 -0500 |
commit | 7c439073f39010ad3ac937b8c9726da0f27976b7 (patch) | |
tree | 3e0d9e1aab4cc2da78514ac8a9067a9332bf9a34 /os_client_config/cloud_config.py | |
parent | 278a761df68d1e7d4d93ee2c6fb91f1a0e82e78a (diff) | |
download | os-client-config-7c439073f39010ad3ac937b8c9726da0f27976b7.tar.gz |
Flesh out netowrk config list
Add support for indicating default_interface. Also, add some validation
and normalization code, some interface methods and, shockingly,
documentation.
Change-Id: Ib45b68894585ac02821d5d2376510fd7a8e8ee40
Diffstat (limited to 'os_client_config/cloud_config.py')
-rw-r--r-- | os_client_config/cloud_config.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/os_client_config/cloud_config.py b/os_client_config/cloud_config.py index b19607e..e63bd12 100644 --- a/os_client_config/cloud_config.py +++ b/os_client_config/cloud_config.py @@ -438,3 +438,27 @@ class CloudConfig(object): if resource not in expiration: return default return float(expiration[resource]) + + def get_external_networks(self): + """Get list of network names for external networks.""" + return [ + net['name'] for net in self._openstack_config['networks'] + if net['routes_externally']] + + def get_internal_networks(self): + """Get list of network names for internal networks.""" + return [ + net['name'] for net in self._openstack_config['networks'] + if not net['routes_externally']] + + def get_default_network(self): + """Get network used for default interactions.""" + for net in self._openstack_config['networks']: + if net['default_interface']: + return net + + def get_nat_destination(self): + """Get network used for NAT destination.""" + for net in self._openstack_config['networks']: + if net['nat_destination']: + return net |