mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-05-07 13:52:54 +00:00
Removed dict.iteritems() in modules. (#18859)
This is for py3 compatibility, addressed in #18506
This commit is contained in:
committed by
Toshio Kuratomi
parent
4b27d08643
commit
ef391a11ec
@@ -274,14 +274,14 @@ def update_dynamo_table(table, throughput=None, check_mode=False, global_indexes
|
||||
removed_indexes, added_indexes, index_throughput_changes = get_changed_global_indexes(table, global_indexes)
|
||||
if removed_indexes:
|
||||
if not check_mode:
|
||||
for name, index in removed_indexes.iteritems():
|
||||
for name, index in removed_indexes.items():
|
||||
global_indexes_changed = table.delete_global_secondary_index(name) or global_indexes_changed
|
||||
else:
|
||||
global_indexes_changed = True
|
||||
|
||||
if added_indexes:
|
||||
if not check_mode:
|
||||
for name, index in added_indexes.iteritems():
|
||||
for name, index in added_indexes.items():
|
||||
global_indexes_changed = table.create_global_secondary_index(global_index=index) or global_indexes_changed
|
||||
else:
|
||||
global_indexes_changed = True
|
||||
@@ -328,18 +328,18 @@ def get_changed_global_indexes(table, global_indexes):
|
||||
set_index_info = dict((index.name, index.schema()) for index in global_indexes)
|
||||
set_index_objects = dict((index.name, index) for index in global_indexes)
|
||||
|
||||
removed_indexes = dict((name, index) for name, index in table_index_info.iteritems() if name not in set_index_info)
|
||||
added_indexes = dict((name, set_index_objects[name]) for name, index in set_index_info.iteritems() if name not in table_index_info)
|
||||
removed_indexes = dict((name, index) for name, index in table_index_info.items() if name not in set_index_info)
|
||||
added_indexes = dict((name, set_index_objects[name]) for name, index in set_index_info.items() if name not in table_index_info)
|
||||
# todo: uncomment once boto has https://github.com/boto/boto/pull/3447 fixed
|
||||
# index_throughput_changes = dict((name, index.throughput) for name, index in set_index_objects.iteritems() if name not in added_indexes and (index.throughput['read'] != str(table_index_objects[name].throughput['read']) or index.throughput['write'] != str(table_index_objects[name].throughput['write'])))
|
||||
# index_throughput_changes = dict((name, index.throughput) for name, index in set_index_objects.items() if name not in added_indexes and (index.throughput['read'] != str(table_index_objects[name].throughput['read']) or index.throughput['write'] != str(table_index_objects[name].throughput['write'])))
|
||||
# todo: remove once boto has https://github.com/boto/boto/pull/3447 fixed
|
||||
index_throughput_changes = dict((name, index.throughput) for name, index in set_index_objects.iteritems() if name not in added_indexes)
|
||||
index_throughput_changes = dict((name, index.throughput) for name, index in set_index_objects.items() if name not in added_indexes)
|
||||
|
||||
return removed_indexes, added_indexes, index_throughput_changes
|
||||
|
||||
|
||||
def validate_index(index, module):
|
||||
for key, val in index.iteritems():
|
||||
for key, val in index.items():
|
||||
if key not in INDEX_OPTIONS:
|
||||
module.fail_json(msg='%s is not a valid option for an index' % key)
|
||||
for required_option in INDEX_REQUIRED_OPTIONS:
|
||||
|
||||
@@ -458,7 +458,7 @@ def create_autoscaling_group(connection, module):
|
||||
|
||||
asg_tags = []
|
||||
for tag in set_tags:
|
||||
for k,v in tag.iteritems():
|
||||
for k,v in tag.items():
|
||||
if k !='propagate_at_launch':
|
||||
asg_tags.append(Tag(key=k,
|
||||
value=v,
|
||||
|
||||
@@ -206,7 +206,7 @@ except ImportError:
|
||||
HAS_BOTO3 = False
|
||||
|
||||
def match_asg_tags(tags_to_match, asg):
|
||||
for key, value in tags_to_match.iteritems():
|
||||
for key, value in tags_to_match.items():
|
||||
for tag in asg['Tags']:
|
||||
if key == tag['Key'] and value == tag['Value']:
|
||||
break
|
||||
|
||||
@@ -911,7 +911,7 @@ class ElbManager(object):
|
||||
if not self.elb.health_check:
|
||||
self.elb.health_check = HealthCheck()
|
||||
|
||||
for attr, desired_value in health_check_config.iteritems():
|
||||
for attr, desired_value in health_check_config.items():
|
||||
if getattr(self.elb.health_check, attr) != desired_value:
|
||||
setattr(self.elb.health_check, attr, desired_value)
|
||||
update_health_check = True
|
||||
@@ -950,7 +950,7 @@ class ElbManager(object):
|
||||
}
|
||||
|
||||
update_access_logs_config = False
|
||||
for attr, desired_value in access_logs_config.iteritems():
|
||||
for attr, desired_value in access_logs_config.items():
|
||||
if getattr(attributes.access_log, attr) != desired_value:
|
||||
setattr(attributes.access_log, attr, desired_value)
|
||||
update_access_logs_config = True
|
||||
|
||||
@@ -97,7 +97,7 @@ class Ec2Metadata(object):
|
||||
|
||||
def _mangle_fields(self, fields, uri, filter_patterns=['public-keys-0']):
|
||||
new_fields = {}
|
||||
for key, value in fields.iteritems():
|
||||
for key, value in fields.items():
|
||||
split_fields = key[len(uri):].split('/')
|
||||
if len(split_fields) > 1 and split_fields[1]:
|
||||
new_key = "-".join(split_fields)
|
||||
|
||||
@@ -106,7 +106,7 @@ def list_dhcp_options(client, module):
|
||||
|
||||
if module.params.get('filters'):
|
||||
params['Filters'] = []
|
||||
for key, value in module.params.get('filters').iteritems():
|
||||
for key, value in module.params.get('filters').items():
|
||||
temp_dict = dict()
|
||||
temp_dict['Name'] = key
|
||||
if isinstance(value, basestring):
|
||||
|
||||
@@ -161,7 +161,7 @@ def icmp_present(entry):
|
||||
def load_tags(module):
|
||||
tags = []
|
||||
if module.params.get('tags'):
|
||||
for name, value in module.params.get('tags').iteritems():
|
||||
for name, value in module.params.get('tags').items():
|
||||
tags.append({'Key': name, 'Value': str(value)})
|
||||
tags.append({'Key': "Name", 'Value': module.params.get('name')})
|
||||
else:
|
||||
@@ -239,7 +239,7 @@ def tags_changed(nacl_id, client, module):
|
||||
if nacl['NetworkAcls']:
|
||||
nacl_values = [t.values() for t in nacl['NetworkAcls'][0]['Tags']]
|
||||
nacl_tags = [item for sublist in nacl_values for item in sublist]
|
||||
tag_values = [[key, str(value)] for key, value in tags.iteritems()]
|
||||
tag_values = [[key, str(value)] for key, value in tags.items()]
|
||||
tags = [item for sublist in tag_values for item in sublist]
|
||||
if sorted(nacl_tags) == sorted(tags):
|
||||
changed = False
|
||||
|
||||
@@ -210,7 +210,7 @@ def tags_changed(pcx_id, client, module):
|
||||
if pcx['VpcPeeringConnections']:
|
||||
pcx_values = [t.values() for t in pcx['VpcPeeringConnections'][0]['Tags']]
|
||||
pcx_tags = [item for sublist in pcx_values for item in sublist]
|
||||
tag_values = [[key, str(value)] for key, value in tags.iteritems()]
|
||||
tag_values = [[key, str(value)] for key, value in tags.items()]
|
||||
tags = [item for sublist in tag_values for item in sublist]
|
||||
if sorted(pcx_tags) == sorted(tags):
|
||||
changed = False
|
||||
@@ -305,7 +305,7 @@ def accept_reject_delete(state, client, module):
|
||||
def load_tags(module):
|
||||
tags = []
|
||||
if module.params.get('tags'):
|
||||
for name, value in module.params.get('tags').iteritems():
|
||||
for name, value in module.params.get('tags').items():
|
||||
tags.append({'Key': name, 'Value': str(value)})
|
||||
return tags
|
||||
|
||||
|
||||
@@ -233,7 +233,7 @@ def get_resource_tags(vpc_conn, resource_id):
|
||||
|
||||
def tags_match(match_tags, candidate_tags):
|
||||
return all((k in candidate_tags and candidate_tags[k] == v
|
||||
for k, v in match_tags.iteritems()))
|
||||
for k, v in match_tags.items()))
|
||||
|
||||
|
||||
def ensure_tags(vpc_conn, resource_id, tags, add_only, check_mode):
|
||||
|
||||
@@ -276,7 +276,7 @@ def load_tags(module):
|
||||
tags = []
|
||||
|
||||
if module.params.get('tags'):
|
||||
for name, value in module.params.get('tags').iteritems():
|
||||
for name, value in module.params.get('tags').items():
|
||||
tags.append({'Key': name, 'Value': str(value)})
|
||||
tags.append({'Key': "Name", 'Value': module.params.get('name')})
|
||||
else:
|
||||
|
||||
@@ -244,7 +244,7 @@ def main():
|
||||
|
||||
def _right_has_values_of_left(left, right):
|
||||
# Make sure the values are equivalent for everything left has
|
||||
for k, v in left.iteritems():
|
||||
for k, v in left.items():
|
||||
if not ((not v and (k not in right or not right[k])) or (k in right and v == right[k])):
|
||||
# We don't care about list ordering because ECS can change things
|
||||
if isinstance(v, list) and k in right:
|
||||
@@ -261,7 +261,7 @@ def main():
|
||||
return False
|
||||
|
||||
# Make sure right doesn't have anything that left doesn't
|
||||
for k, v in right.iteritems():
|
||||
for k, v in right.items():
|
||||
if v and k not in left:
|
||||
return False
|
||||
|
||||
|
||||
@@ -385,7 +385,7 @@ class ElastiCacheManager(object):
|
||||
'NumCacheNodes': self.num_nodes,
|
||||
'EngineVersion': self.cache_engine_version
|
||||
}
|
||||
for key, value in modifiable_data.iteritems():
|
||||
for key, value in modifiable_data.items():
|
||||
if value is not None and self.data[key] != value:
|
||||
return True
|
||||
|
||||
@@ -419,7 +419,7 @@ class ElastiCacheManager(object):
|
||||
# Only check for modifications if zone is specified
|
||||
if self.zone is not None:
|
||||
unmodifiable_data['zone'] = self.data['PreferredAvailabilityZone']
|
||||
for key, value in unmodifiable_data.iteritems():
|
||||
for key, value in unmodifiable_data.items():
|
||||
if getattr(self, key) is not None and getattr(self, key) != value:
|
||||
return True
|
||||
return False
|
||||
|
||||
@@ -141,7 +141,7 @@ def create_tags_container(tags):
|
||||
|
||||
tag_set = TagSet()
|
||||
tags_obj = Tags()
|
||||
for key, val in tags.iteritems():
|
||||
for key, val in tags.items():
|
||||
tag_set.add_tag(key, val)
|
||||
|
||||
tags_obj.add_tag_set(tag_set)
|
||||
|
||||
@@ -132,7 +132,7 @@ class CloudStackFacts(object):
|
||||
result = {}
|
||||
filter = module.params.get('filter')
|
||||
if not filter:
|
||||
for key,path in self.fact_paths.iteritems():
|
||||
for key,path in self.fact_paths.items():
|
||||
result[key] = self._fetch(CS_METADATA_BASE_URL + "/" + path)
|
||||
result['cloudstack_user_data'] = self._get_user_data_json()
|
||||
else:
|
||||
|
||||
@@ -334,7 +334,7 @@ class AnsibleCloudStackPortforwarding(AnsibleCloudStack):
|
||||
super(AnsibleCloudStackPortforwarding, self).get_result(portforwarding_rule)
|
||||
if portforwarding_rule:
|
||||
# Bad bad API does not always return int when it should.
|
||||
for search_key, return_key in self.returns_to_int.iteritems():
|
||||
for search_key, return_key in self.returns_to_int.items():
|
||||
if search_key in portforwarding_rule:
|
||||
self.result[return_key] = int(portforwarding_rule[search_key])
|
||||
return self.result
|
||||
|
||||
@@ -231,7 +231,7 @@ class Droplet(JsonfyMixIn):
|
||||
|
||||
def update_attr(self, attrs=None):
|
||||
if attrs:
|
||||
for k, v in attrs.iteritems():
|
||||
for k, v in attrs.items():
|
||||
setattr(self, k, v)
|
||||
else:
|
||||
json = self.manager.show_droplet(self.id)
|
||||
|
||||
@@ -902,11 +902,11 @@ class DockerManager(object):
|
||||
self.ensure_capability('env_file')
|
||||
parsed_env_file = docker.utils.parse_env_file(env_file)
|
||||
|
||||
for name, value in parsed_env_file.iteritems():
|
||||
for name, value in parsed_env_file.items():
|
||||
final_env[name] = str(value)
|
||||
|
||||
if env:
|
||||
for name, value in env.iteritems():
|
||||
for name, value in env.items():
|
||||
final_env[name] = str(value)
|
||||
|
||||
return final_env
|
||||
@@ -998,7 +998,7 @@ class DockerManager(object):
|
||||
self.ensure_capability('log_driver')
|
||||
log_config = docker.utils.LogConfig(type=docker.utils.LogConfig.types.JSON)
|
||||
if optionals['log_opt'] is not None:
|
||||
for k, v in optionals['log_opt'].iteritems():
|
||||
for k, v in optionals['log_opt'].items():
|
||||
log_config.set_config_value(k, v)
|
||||
log_config.type = optionals['log_driver']
|
||||
params['log_config'] = log_config
|
||||
@@ -1073,7 +1073,7 @@ class DockerManager(object):
|
||||
'''
|
||||
|
||||
parts = []
|
||||
for k, v in self.counters.iteritems():
|
||||
for k, v in self.counters.items():
|
||||
if v == 0:
|
||||
continue
|
||||
|
||||
@@ -1100,7 +1100,7 @@ class DockerManager(object):
|
||||
|
||||
def get_summary_counters_msg(self):
|
||||
msg = ""
|
||||
for k, v in self.counters.iteritems():
|
||||
for k, v in self.counters.items():
|
||||
msg = msg + "%s %d " % (k, v)
|
||||
|
||||
return msg
|
||||
@@ -1109,7 +1109,7 @@ class DockerManager(object):
|
||||
self.counters[name] = self.counters[name] + 1
|
||||
|
||||
def has_changed(self):
|
||||
for k, v in self.counters.iteritems():
|
||||
for k, v in self.counters.items():
|
||||
if v > 0:
|
||||
return True
|
||||
|
||||
@@ -1287,7 +1287,7 @@ class DockerManager(object):
|
||||
expected_env[name] = value
|
||||
|
||||
if self.environment:
|
||||
for name, value in self.environment.iteritems():
|
||||
for name, value in self.environment.items():
|
||||
expected_env[name] = str(value)
|
||||
|
||||
actual_env = {}
|
||||
@@ -1304,7 +1304,7 @@ class DockerManager(object):
|
||||
# LABELS
|
||||
|
||||
expected_labels = {}
|
||||
for name, value in self.module.params.get('labels').iteritems():
|
||||
for name, value in self.module.params.get('labels').items():
|
||||
expected_labels[name] = str(value)
|
||||
|
||||
if isinstance(container['Config']['Labels'], dict):
|
||||
@@ -1401,7 +1401,7 @@ class DockerManager(object):
|
||||
|
||||
expected_bound_ports = {}
|
||||
if self.port_bindings:
|
||||
for container_port, config in self.port_bindings.iteritems():
|
||||
for container_port, config in self.port_bindings.items():
|
||||
if isinstance(container_port, int):
|
||||
container_port = "{0}/tcp".format(container_port)
|
||||
if len(config) == 1:
|
||||
@@ -1437,7 +1437,7 @@ class DockerManager(object):
|
||||
# LINKS
|
||||
|
||||
expected_links = set()
|
||||
for link, alias in (self.links or {}).iteritems():
|
||||
for link, alias in (self.links or {}).items():
|
||||
expected_links.add("/{0}:{1}/{2}".format(link, container["Name"], alias))
|
||||
|
||||
actual_links = set(container['HostConfig']['Links'] or [])
|
||||
|
||||
@@ -815,7 +815,7 @@ class TaskParameters(DockerBaseClass):
|
||||
kernel_memory='kernel_memory'
|
||||
)
|
||||
result = dict()
|
||||
for key, value in update_parameters.iteritems():
|
||||
for key, value in update_parameters.items():
|
||||
if getattr(self, value, None) is not None:
|
||||
result[key] = getattr(self, value)
|
||||
return result
|
||||
@@ -927,7 +927,7 @@ class TaskParameters(DockerBaseClass):
|
||||
pid_mode='pid_mode'
|
||||
)
|
||||
params = dict()
|
||||
for key, value in host_config_params.iteritems():
|
||||
for key, value in host_config_params.items():
|
||||
if getattr(self, value, None) is not None:
|
||||
params[key] = getattr(self, value)
|
||||
|
||||
@@ -1116,10 +1116,10 @@ class TaskParameters(DockerBaseClass):
|
||||
final_env = {}
|
||||
if self.env_file:
|
||||
parsed_env_file = utils.parse_env_file(self.env_file)
|
||||
for name, value in parsed_env_file.iteritems():
|
||||
for name, value in parsed_env_file.items():
|
||||
final_env[name] = str(value)
|
||||
if self.env:
|
||||
for name, value in self.env.iteritems():
|
||||
for name, value in self.env.items():
|
||||
final_env[name] = str(value)
|
||||
return final_env
|
||||
|
||||
@@ -1258,7 +1258,7 @@ class Container(DockerBaseClass):
|
||||
)
|
||||
|
||||
differences = []
|
||||
for key, value in config_mapping.iteritems():
|
||||
for key, value in config_mapping.items():
|
||||
self.log('check differences %s %s vs %s' % (key, getattr(self.parameters, key), str(value)))
|
||||
if getattr(self.parameters, key, None) is not None:
|
||||
if isinstance(getattr(self.parameters, key), list) and isinstance(value, list):
|
||||
@@ -1314,7 +1314,7 @@ class Container(DockerBaseClass):
|
||||
'''
|
||||
if not isinstance(dict_a, dict) or not isinstance(dict_b, dict):
|
||||
return False
|
||||
for key, value in dict_a.iteritems():
|
||||
for key, value in dict_a.items():
|
||||
if isinstance(value, dict):
|
||||
match = self._compare_dicts(value, dict_b.get(key))
|
||||
elif isinstance(value, list):
|
||||
@@ -1353,7 +1353,7 @@ class Container(DockerBaseClass):
|
||||
)
|
||||
|
||||
differences = []
|
||||
for key, value in config_mapping.iteritems():
|
||||
for key, value in config_mapping.items():
|
||||
if getattr(self.parameters, key, None) and getattr(self.parameters, key) != value:
|
||||
# no match. record the differences
|
||||
item = dict()
|
||||
@@ -1402,7 +1402,7 @@ class Container(DockerBaseClass):
|
||||
diff = True
|
||||
if network.get('links') and connected_networks[network['name']].get('Links'):
|
||||
expected_links = []
|
||||
for link, alias in network['links'].iteritems():
|
||||
for link, alias in network['links'].items():
|
||||
expected_links.append("%s:%s" % (link, alias))
|
||||
for link in expected_links:
|
||||
if link not in connected_networks[network['name']].get('Links', []):
|
||||
@@ -1433,7 +1433,7 @@ class Container(DockerBaseClass):
|
||||
|
||||
connected_networks = self.container['NetworkSettings'].get('Networks')
|
||||
if connected_networks:
|
||||
for network, network_config in connected_networks.iteritems():
|
||||
for network, network_config in connected_networks.items():
|
||||
keep = False
|
||||
if self.parameters.networks:
|
||||
for expected_network in self.parameters.networks:
|
||||
@@ -1485,7 +1485,7 @@ class Container(DockerBaseClass):
|
||||
if not self.parameters.published_ports:
|
||||
return None
|
||||
expected_bound_ports = {}
|
||||
for container_port, config in self.parameters.published_ports.iteritems():
|
||||
for container_port, config in self.parameters.published_ports.items():
|
||||
if isinstance(container_port, int):
|
||||
container_port = "%s/tcp" % container_port
|
||||
if len(config) == 1:
|
||||
@@ -1504,7 +1504,7 @@ class Container(DockerBaseClass):
|
||||
self.log('parameter links:')
|
||||
self.log(self.parameters.links, pretty_print=True)
|
||||
exp_links = []
|
||||
for link, alias in self.parameters.links.iteritems():
|
||||
for link, alias in self.parameters.links.items():
|
||||
exp_links.append("/%s:%s/%s" % (link, ('/' + self.parameters.name), alias))
|
||||
return exp_links
|
||||
|
||||
@@ -1635,7 +1635,7 @@ class Container(DockerBaseClass):
|
||||
if getattr(self.parameters, param_name, None) is None:
|
||||
return None
|
||||
results = []
|
||||
for key, value in getattr(self.parameters, param_name).iteritems():
|
||||
for key, value in getattr(self.parameters, param_name).items():
|
||||
results.append("%s%s%s" % (key, join_with, value))
|
||||
return results
|
||||
|
||||
|
||||
@@ -509,7 +509,7 @@ class ImageManager(DockerBaseClass):
|
||||
if self.container_limits:
|
||||
params['container_limits'] = self.container_limits
|
||||
if self.buildargs:
|
||||
for key, value in self.buildargs.iteritems():
|
||||
for key, value in self.buildargs.items():
|
||||
if not isinstance(value, basestring):
|
||||
self.buildargs[key] = str(value)
|
||||
params['buildargs'] = self.buildargs
|
||||
|
||||
@@ -242,7 +242,7 @@ class DockerNetworkManager(object):
|
||||
different = True
|
||||
differences.append('driver_options')
|
||||
else:
|
||||
for key, value in self.parameters.driver_options.iteritems():
|
||||
for key, value in self.parameters.driver_options.items():
|
||||
if not net['Options'].get(key) or value != net['Options'][key]:
|
||||
different = True
|
||||
differences.append('driver_options.%s' % key)
|
||||
@@ -255,7 +255,7 @@ class DockerNetworkManager(object):
|
||||
different = True
|
||||
differences.append('ipam_options')
|
||||
else:
|
||||
for key, value in self.parameters.ipam_options.iteritems():
|
||||
for key, value in self.parameters.ipam_options.items():
|
||||
camelkey = None
|
||||
for net_key in net['IPAM']['Config'][0]:
|
||||
if key == net_key.lower():
|
||||
|
||||
@@ -284,7 +284,7 @@ class LXDProfileManagement(object):
|
||||
|
||||
def _apply_profile_configs(self):
|
||||
config = self.old_profile_json.copy()
|
||||
for k, v in self.config.iteritems():
|
||||
for k, v in self.config.items():
|
||||
config[k] = v
|
||||
self.client.do('PUT', '/1.0/profiles/{}'.format(self.name), config)
|
||||
self.actions.append('apply_profile_configs')
|
||||
|
||||
@@ -328,7 +328,7 @@ def node_check(proxmox, node):
|
||||
|
||||
def create_instance(module, proxmox, vmid, node, disk, storage, cpus, memory, swap, timeout, **kwargs):
|
||||
proxmox_node = proxmox.nodes(node)
|
||||
kwargs = dict((k,v) for k, v in kwargs.iteritems() if v is not None)
|
||||
kwargs = dict((k,v) for k, v in kwargs.items() if v is not None)
|
||||
if VZ_TYPE =='lxc':
|
||||
kwargs['cpulimit']=cpus
|
||||
kwargs['rootfs']=disk
|
||||
|
||||
@@ -689,7 +689,7 @@ def get_vminfo(module, proxmox, node, vmid, **kwargs):
|
||||
module.fail_json(msg='Getting information for VM with vmid = %s failed with exception: %s' % (vmid, e))
|
||||
|
||||
# Sanitize kwargs. Remove not defined args and ensure True and False converted to int.
|
||||
kwargs = dict((k,v) for k, v in kwargs.iteritems() if v is not None)
|
||||
kwargs = dict((k,v) for k, v in kwargs.items() if v is not None)
|
||||
|
||||
# Convert all dict in kwargs to elements. For hostpci[n], ide[n], net[n], numa[n], parallel[n], sata[n], scsi[n], serial[n], virtio[n]
|
||||
for k in kwargs.keys():
|
||||
@@ -698,7 +698,7 @@ def get_vminfo(module, proxmox, node, vmid, **kwargs):
|
||||
del kwargs[k]
|
||||
|
||||
# Split information by type
|
||||
for k, v in kwargs.iteritems():
|
||||
for k, v in kwargs.items():
|
||||
if re.match(r'net[0-9]', k) is not None:
|
||||
interface = k
|
||||
k = vm[k]
|
||||
@@ -723,8 +723,8 @@ def create_vm(module, proxmox, vmid, node, name, memory, cpu, cores, sockets, ti
|
||||
proxmox_node = proxmox.nodes(node)
|
||||
|
||||
# Sanitize kwargs. Remove not defined args and ensure True and False converted to int.
|
||||
kwargs = dict((k,v) for k, v in kwargs.iteritems() if v is not None)
|
||||
kwargs.update(dict([k, int(v)] for k, v in kwargs.iteritems() if isinstance(v, bool)))
|
||||
kwargs = dict((k,v) for k, v in kwargs.items() if v is not None)
|
||||
kwargs.update(dict([k, int(v)] for k, v in kwargs.items() if isinstance(v, bool)))
|
||||
|
||||
# The features work only on PVE 4
|
||||
if PVE_MAJOR_VERSION < 4:
|
||||
|
||||
@@ -129,7 +129,7 @@ def change_keys(recs, key='uuid', filter_func=None):
|
||||
"""
|
||||
new_recs = {}
|
||||
|
||||
for ref, rec in recs.iteritems():
|
||||
for ref, rec in recs.items():
|
||||
if filter_func is not None and not filter_func(rec):
|
||||
continue
|
||||
|
||||
|
||||
@@ -484,7 +484,7 @@ def cloudservers(module, state=None, name=None, flavor=None, image=None,
|
||||
if not boot_from_volume and not boot_volume and not image:
|
||||
module.fail_json(msg='image is required for the "rax" module')
|
||||
|
||||
for arg, value in dict(name=name, flavor=flavor).iteritems():
|
||||
for arg, value in dict(name=name, flavor=flavor).items():
|
||||
if not value:
|
||||
module.fail_json(msg='%s is required for the "rax" module' %
|
||||
arg)
|
||||
|
||||
@@ -129,7 +129,7 @@ def cloud_block_storage_attachments(module, state, volume, server, device,
|
||||
|
||||
volume.get()
|
||||
|
||||
for key, value in vars(volume).iteritems():
|
||||
for key, value in vars(volume).items():
|
||||
if (isinstance(value, NON_CALLABLES) and
|
||||
not key.startswith('_')):
|
||||
instance[key] = value
|
||||
|
||||
@@ -114,7 +114,7 @@ def save_instance(module, name, flavor, volume, cdb_type, cdb_version, wait,
|
||||
|
||||
for arg, value in dict(name=name, flavor=flavor,
|
||||
volume=volume, type=cdb_type, version=cdb_version
|
||||
).iteritems():
|
||||
).items():
|
||||
if not value:
|
||||
module.fail_json(msg='%s is required for the "rax_cdb"'
|
||||
' module' % arg)
|
||||
|
||||
@@ -93,7 +93,7 @@ def find_user(instance, name):
|
||||
|
||||
def save_user(module, cdb_id, name, password, databases, host):
|
||||
|
||||
for arg, value in dict(cdb_id=cdb_id, name=name).iteritems():
|
||||
for arg, value in dict(cdb_id=cdb_id, name=name).items():
|
||||
if not value:
|
||||
module.fail_json(msg='%s is required for the "rax_cdb_user" '
|
||||
'module' % arg)
|
||||
@@ -148,7 +148,7 @@ def save_user(module, cdb_id, name, password, databases, host):
|
||||
|
||||
def delete_user(module, cdb_id, name):
|
||||
|
||||
for arg, value in dict(cdb_id=cdb_id, name=name).iteritems():
|
||||
for arg, value in dict(cdb_id=cdb_id, name=name).items():
|
||||
if not value:
|
||||
module.fail_json(msg='%s is required for the "rax_cdb_user"'
|
||||
' module' % arg)
|
||||
|
||||
@@ -200,7 +200,7 @@ def cloud_load_balancer(module, state, name, meta, algorithm, port, protocol,
|
||||
'protocol': protocol,
|
||||
'timeout': timeout
|
||||
}
|
||||
for att, value in atts.iteritems():
|
||||
for att, value in atts.items():
|
||||
current = getattr(balancer, att)
|
||||
if current != value:
|
||||
changed = True
|
||||
|
||||
@@ -143,7 +143,7 @@ def cloud_load_balancer_ssl(module, loadbalancer, state, enabled, private_key,
|
||||
needs_change = False
|
||||
|
||||
if existing_ssl:
|
||||
for ssl_attr, value in ssl_attrs.iteritems():
|
||||
for ssl_attr, value in ssl_attrs.items():
|
||||
if ssl_attr == 'privatekey':
|
||||
# The private key is not included in get_ssl_termination's
|
||||
# output (as it shouldn't be). Also, if you're changing the
|
||||
|
||||
@@ -191,7 +191,7 @@ def cloud_check(module, state, entity_id, label, check_type,
|
||||
# Only force a recreation of the check if one of the *specified*
|
||||
# keys is missing or has a different value.
|
||||
if details:
|
||||
for (key, value) in details.iteritems():
|
||||
for (key, value) in details.items():
|
||||
if key not in check.details:
|
||||
should_delete = should_create = True
|
||||
elif value != check.details[key]:
|
||||
|
||||
@@ -594,7 +594,7 @@ class PyVmomiHelper(object):
|
||||
mac = device.macAddress
|
||||
ips = list(device.ipAddress)
|
||||
netDict[mac] = ips
|
||||
for k,v in netDict.iteritems():
|
||||
for k,v in netDict.items():
|
||||
for ipaddress in v:
|
||||
if ipaddress:
|
||||
if '::' in ipaddress:
|
||||
@@ -979,7 +979,7 @@ class PyVmomiHelper(object):
|
||||
timeout=10, headers=None)
|
||||
|
||||
# save all of the transfer data
|
||||
for k,v in info.iteritems():
|
||||
for k,v in info.items():
|
||||
result[k] = v
|
||||
|
||||
# exit early if xfer failed
|
||||
@@ -1045,7 +1045,7 @@ class PyVmomiHelper(object):
|
||||
result['msg'] = str(rsp.read())
|
||||
|
||||
# save all of the transfer data
|
||||
for k,v in info.iteritems():
|
||||
for k,v in info.items():
|
||||
result[k] = v
|
||||
|
||||
return result
|
||||
|
||||
@@ -863,7 +863,7 @@ def reconfigure_vm(vsphere_client, vm, module, esxi, resource_pool, cluster_name
|
||||
if vm_extra_config:
|
||||
spec = spec_singleton(spec, request, vm)
|
||||
extra_config = []
|
||||
for k,v in vm_extra_config.iteritems():
|
||||
for k,v in vm_extra_config.items():
|
||||
ec = spec.new_extraConfig()
|
||||
ec.set_element_key(str(k))
|
||||
ec.set_element_value(str(v))
|
||||
@@ -1085,7 +1085,7 @@ def reconfigure_net(vsphere_client, vm, module, esxi, resource_pool, guest, vm_n
|
||||
module.fail_json(msg="Cannot find datacenter named: %s" % datacenter)
|
||||
dcprops = VIProperty(vsphere_client, dcmor)
|
||||
nfmor = dcprops.networkFolder._obj
|
||||
for k,v in vm_nic.iteritems():
|
||||
for k,v in vm_nic.items():
|
||||
nicNum = k[len(k) -1]
|
||||
if vm_nic[k]['network_type'] == 'dvs':
|
||||
portgroupKey = find_portgroup_key(module, s, nfmor, vm_nic[k]['network'])
|
||||
@@ -1116,7 +1116,7 @@ def reconfigure_net(vsphere_client, vm, module, esxi, resource_pool, guest, vm_n
|
||||
module.exit_json()
|
||||
|
||||
if len(nics) > 0:
|
||||
for nic, obj in nics.iteritems():
|
||||
for nic, obj in nics.items():
|
||||
"""
|
||||
1,2 and 3 are used to mark which action should be taken
|
||||
1 = from a distributed switch to a distributed switch
|
||||
@@ -1145,7 +1145,7 @@ def reconfigure_net(vsphere_client, vm, module, esxi, resource_pool, guest, vm_n
|
||||
"nic_backing").pyclass()
|
||||
nic_backing.set_element_deviceName(vm_nic[nic]['network'])
|
||||
dev._obj.set_element_backing(nic_backing)
|
||||
for nic, obj in nics.iteritems():
|
||||
for nic, obj in nics.items():
|
||||
dev = obj[0]
|
||||
spec = request.new_spec()
|
||||
nic_change = spec.new_deviceChange()
|
||||
@@ -1178,7 +1178,7 @@ def _build_folder_tree(nodes, parent):
|
||||
|
||||
|
||||
def _find_path_in_tree(tree, path):
|
||||
for name, o in tree.iteritems():
|
||||
for name, o in tree.items():
|
||||
if name == path[0]:
|
||||
if len(path) == 1:
|
||||
return o
|
||||
@@ -1231,7 +1231,7 @@ def create_vm(vsphere_client, module, esxi, resource_pool, cluster_name, guest,
|
||||
|
||||
# try the legacy behaviour of just matching the folder name, so 'lamp' alone matches 'production/customerA/lamp'
|
||||
if vmfmor is None:
|
||||
for mor, name in vsphere_client._get_managed_objects(MORTypes.Folder).iteritems():
|
||||
for mor, name in vsphere_client._get_managed_objects(MORTypes.Folder).items():
|
||||
if name == vm_extra_config['folder']:
|
||||
vmfmor = mor
|
||||
|
||||
|
||||
Reference in New Issue
Block a user