diff options
| author | John Tran <jtran@attinteractive.com> | 2011-08-05 02:27:36 +0000 |
|---|---|---|
| committer | Tarmac <> | 2011-08-05 02:27:36 +0000 |
| commit | 502801bfff0015ed3aa93b9d65a87cb6b80fd11d (patch) | |
| tree | 5e12d6bd7257f44e6cbc7c34dffbc3475cdcdf19 | |
| parent | 0b275cd9d7a82aa596cc45be7137176de479cb4b (diff) | |
| parent | f942a7f22acb6a6719a3de778ba55ca25ea0ee68 (diff) | |
For nova-manage network create cmd, added warning when size of subnet(s) being created are larger than FLAG.network_size, in attempt to alleviate confusion. For example, currently when 'nova-manage network create foo 192.168.0.0/16', the result is that it creates a 192.168.0.0/24 instead without any indication to why
| -rwxr-xr-x | bin/nova-manage | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/bin/nova-manage b/bin/nova-manage index 807753a2e..f272351c2 100755 --- a/bin/nova-manage +++ b/bin/nova-manage @@ -56,6 +56,7 @@ import gettext import glob import json +import math import netaddr import os import sys @@ -694,7 +695,17 @@ class NetworkCommands(object): if not num_networks: num_networks = FLAGS.num_networks if not network_size: - network_size = FLAGS.network_size + fixnet = netaddr.IPNetwork(fixed_range_v4) + each_subnet_size = fixnet.size / int(num_networks) + if each_subnet_size > FLAGS.network_size: + network_size = FLAGS.network_size + subnet = 32 - int(math.log(network_size, 2)) + oversize_msg = _('Subnet(s) too large, defaulting to /%s.' + ' To override, specify network_size flag.' + ) % subnet + print oversize_msg + else: + network_size = fixnet.size if not multi_host: multi_host = FLAGS.multi_host else: |
