Use yaml.safe_load to load YAML files
Since PyYAML 5.1, yaml.load without specifying the Loader option is deprecated and shows the following warning. YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details. This change replaces yaml.load by yaml.safe_load (which is effectively same as adding Loader=yaml.SafeLoader) to get rid of that warning message. Also, existing all usage of yaml.load with the Loader option are also replaced so that we to make all implementation to load yaml files consistent. Change-Id: Id44fa2354429b944fbc0809f63db558bb7de23f7
This commit is contained in:
parent
9baa416151
commit
53040573ab
@ -58,7 +58,7 @@ def main():
|
|||||||
output = opts.output
|
output = opts.output
|
||||||
# We open the resource registry once
|
# We open the resource registry once
|
||||||
resource_registry = "./overcloud-resource-registry-puppet.yaml"
|
resource_registry = "./overcloud-resource-registry-puppet.yaml"
|
||||||
resource_reg = yaml.load(open(os.path.join(resource_registry), 'r'))
|
resource_reg = yaml.safe_load(open(os.path.join(resource_registry), 'r'))
|
||||||
|
|
||||||
if (opts.all):
|
if (opts.all):
|
||||||
# This means we will parse all the services defined
|
# This means we will parse all the services defined
|
||||||
@ -73,7 +73,8 @@ def main():
|
|||||||
# The service definition will be the same resource registry
|
# The service definition will be the same resource registry
|
||||||
role_resources = resource_reg
|
role_resources = resource_reg
|
||||||
else:
|
else:
|
||||||
role_resources = yaml.load(open(os.path.join("./roles/", role + ".yaml"), 'r'))
|
role_resources = yaml.safe_load(
|
||||||
|
open(os.path.join("./roles/", role + ".yaml"), 'r'))
|
||||||
|
|
||||||
for section_task in opts.ansible_tasks:
|
for section_task in opts.ansible_tasks:
|
||||||
if(opts.all):
|
if(opts.all):
|
||||||
@ -102,7 +103,8 @@ def main():
|
|||||||
if('::' in config_file):
|
if('::' in config_file):
|
||||||
print("This is a nested Heat resource")
|
print("This is a nested Heat resource")
|
||||||
else:
|
else:
|
||||||
data_source = yaml.load(open("./" + config_file, 'r'))
|
data_source = yaml.safe_load(
|
||||||
|
open("./" + config_file, 'r'))
|
||||||
expression = engine(
|
expression = engine(
|
||||||
"$.outputs.role_data.value.get(" + section_task + ").flatten().distinct()"
|
"$.outputs.role_data.value.get(" + section_task + ").flatten().distinct()"
|
||||||
)
|
)
|
||||||
@ -121,7 +123,8 @@ def main():
|
|||||||
if exc.errno != errno.EEXIST:
|
if exc.errno != errno.EEXIST:
|
||||||
raise
|
raise
|
||||||
save = open(tasks_output_file, 'w+')
|
save = open(tasks_output_file, 'w+')
|
||||||
yaml.dump(yaml.load(json.dumps(role_ansible_tasks)), save, default_flow_style=False)
|
yaml.dump(yaml.safe_load(json.dumps(role_ansible_tasks)),
|
||||||
|
save, default_flow_style=False)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
@ -292,18 +292,18 @@ def compare_parameters(old_impl_path, new_impl_path):
|
|||||||
new_impl_params = []
|
new_impl_params = []
|
||||||
for filename in glob.glob(old_impl_path + "/*.yaml"):
|
for filename in glob.glob(old_impl_path + "/*.yaml"):
|
||||||
with open(filename, 'r') as f:
|
with open(filename, 'r') as f:
|
||||||
tpl = yaml.load(f.read(), Loader=yaml.SafeLoader)
|
tpl = yaml.safe_load(f.read())
|
||||||
old_impl_params.extend(tpl["parameters"].keys())
|
old_impl_params.extend(tpl["parameters"].keys())
|
||||||
for filename in glob.glob(new_impl_path + "/*.yaml"):
|
for filename in glob.glob(new_impl_path + "/*.yaml"):
|
||||||
with open(filename, 'r') as f:
|
with open(filename, 'r') as f:
|
||||||
tpl = yaml.load(f.read(), Loader=yaml.SafeLoader)
|
tpl = yaml.safe_load(f.read())
|
||||||
new_impl_params.extend(tpl["parameters"].keys())
|
new_impl_params.extend(tpl["parameters"].keys())
|
||||||
return set(old_impl_params).difference(set(new_impl_params))
|
return set(old_impl_params).difference(set(new_impl_params))
|
||||||
|
|
||||||
|
|
||||||
def validate_role_name(filename):
|
def validate_role_name(filename):
|
||||||
with open(filename, 'r') as f:
|
with open(filename, 'r') as f:
|
||||||
tpl = yaml.load(f.read(), Loader=yaml.SafeLoader)
|
tpl = yaml.safe_load(f.read())
|
||||||
|
|
||||||
role_data = tpl[0]
|
role_data = tpl[0]
|
||||||
if role_data['name'] != os.path.basename(filename).split('.')[0]:
|
if role_data['name'] != os.path.basename(filename).split('.')[0]:
|
||||||
@ -319,7 +319,7 @@ def validate_hci_compute_services_default(env_filename, env_tpl):
|
|||||||
roles_filename = os.path.join(os.path.dirname(env_filename),
|
roles_filename = os.path.join(os.path.dirname(env_filename),
|
||||||
'../roles/Compute.yaml')
|
'../roles/Compute.yaml')
|
||||||
with open(roles_filename, 'r') as f:
|
with open(roles_filename, 'r') as f:
|
||||||
roles_tpl = yaml.load(f.read(), Loader=yaml.SafeLoader)
|
roles_tpl = yaml.safe_load(f.read())
|
||||||
|
|
||||||
for role in roles_tpl:
|
for role in roles_tpl:
|
||||||
if role['name'] == 'Compute':
|
if role['name'] == 'Compute':
|
||||||
@ -335,7 +335,7 @@ def validate_hci_computehci_role(hci_role_filename, hci_role_tpl):
|
|||||||
compute_role_filename = os.path.join(os.path.dirname(hci_role_filename),
|
compute_role_filename = os.path.join(os.path.dirname(hci_role_filename),
|
||||||
'./Compute.yaml')
|
'./Compute.yaml')
|
||||||
with open(compute_role_filename, 'r') as f:
|
with open(compute_role_filename, 'r') as f:
|
||||||
compute_role_tpl = yaml.load(f.read(), Loader=yaml.SafeLoader)
|
compute_role_tpl = yaml.safe_load(f.read())
|
||||||
|
|
||||||
compute_role_services = compute_role_tpl[0]['ServicesDefault']
|
compute_role_services = compute_role_tpl[0]['ServicesDefault']
|
||||||
for role in hci_role_tpl:
|
for role in hci_role_tpl:
|
||||||
@ -353,7 +353,7 @@ def validate_controller_dashboard(filename, tpl):
|
|||||||
control_role_filename = os.path.join(os.path.dirname(filename),
|
control_role_filename = os.path.join(os.path.dirname(filename),
|
||||||
'./Controller.yaml')
|
'./Controller.yaml')
|
||||||
with open(control_role_filename, 'r') as f:
|
with open(control_role_filename, 'r') as f:
|
||||||
control_role_tpl = yaml.load(f.read(), Loader=yaml.SafeLoader)
|
control_role_tpl = yaml.safe_load(f.read())
|
||||||
|
|
||||||
control_role_services = control_role_tpl[0]['ServicesDefault']
|
control_role_services = control_role_tpl[0]['ServicesDefault']
|
||||||
for role in tpl:
|
for role in tpl:
|
||||||
@ -370,7 +370,7 @@ def validate_controller_storage_nfs(filename, tpl, exclude_service=()):
|
|||||||
control_role_filename = os.path.join(os.path.dirname(filename),
|
control_role_filename = os.path.join(os.path.dirname(filename),
|
||||||
'./Controller.yaml')
|
'./Controller.yaml')
|
||||||
with open(control_role_filename, 'r') as f:
|
with open(control_role_filename, 'r') as f:
|
||||||
control_role_tpl = yaml.load(f.read(), Loader=yaml.SafeLoader)
|
control_role_tpl = yaml.safe_load(f.read())
|
||||||
|
|
||||||
control_role_services = control_role_tpl[0]['ServicesDefault']
|
control_role_services = control_role_tpl[0]['ServicesDefault']
|
||||||
for role in tpl:
|
for role in tpl:
|
||||||
@ -389,7 +389,7 @@ def validate_hci_role(hci_role_filename, hci_role_tpl):
|
|||||||
compute_role_filename = \
|
compute_role_filename = \
|
||||||
os.path.join(os.path.dirname(hci_role_filename), './Compute.yaml')
|
os.path.join(os.path.dirname(hci_role_filename), './Compute.yaml')
|
||||||
with open(compute_role_filename, 'r') as f:
|
with open(compute_role_filename, 'r') as f:
|
||||||
compute_role_tpl = yaml.load(f.read(), Loader=yaml.SafeLoader)
|
compute_role_tpl = yaml.safe_load(f.read())
|
||||||
|
|
||||||
compute_role_services = compute_role_tpl[0]['ServicesDefault']
|
compute_role_services = compute_role_tpl[0]['ServicesDefault']
|
||||||
for role in hci_role_tpl:
|
for role in hci_role_tpl:
|
||||||
@ -428,7 +428,7 @@ def validate_ceph_role(ceph_role_filename, ceph_role_tpl):
|
|||||||
ceph_storage_role_filename = \
|
ceph_storage_role_filename = \
|
||||||
os.path.join(os.path.dirname(ceph_role_filename), './CephStorage.yaml')
|
os.path.join(os.path.dirname(ceph_role_filename), './CephStorage.yaml')
|
||||||
with open(ceph_storage_role_filename, 'r') as f:
|
with open(ceph_storage_role_filename, 'r') as f:
|
||||||
ceph_storage_role_tpl = yaml.load(f.read(), Loader=yaml.SafeLoader)
|
ceph_storage_role_tpl = yaml.safe_load(f.read())
|
||||||
|
|
||||||
ceph_storage_role_services = ceph_storage_role_tpl[0]['ServicesDefault']
|
ceph_storage_role_services = ceph_storage_role_tpl[0]['ServicesDefault']
|
||||||
for role in ceph_role_tpl:
|
for role in ceph_role_tpl:
|
||||||
@ -459,7 +459,7 @@ def validate_controller_no_ceph_role(filename, tpl):
|
|||||||
control_role_filename = os.path.join(os.path.dirname(filename),
|
control_role_filename = os.path.join(os.path.dirname(filename),
|
||||||
'./Controller.yaml')
|
'./Controller.yaml')
|
||||||
with open(control_role_filename, 'r') as f:
|
with open(control_role_filename, 'r') as f:
|
||||||
control_role_tpl = yaml.load(f.read(), Loader=yaml.SafeLoader)
|
control_role_tpl = yaml.safe_load(f.read())
|
||||||
|
|
||||||
control_role_services = control_role_tpl[0]['ServicesDefault']
|
control_role_services = control_role_tpl[0]['ServicesDefault']
|
||||||
for role in tpl:
|
for role in tpl:
|
||||||
@ -482,7 +482,7 @@ def validate_with_compute_role_services(role_filename, role_tpl, exclude_service
|
|||||||
cmpt_filename = os.path.join(os.path.dirname(role_filename),
|
cmpt_filename = os.path.join(os.path.dirname(role_filename),
|
||||||
'./Compute.yaml')
|
'./Compute.yaml')
|
||||||
with open(cmpt_filename, 'r') as f:
|
with open(cmpt_filename, 'r') as f:
|
||||||
cmpt_tpl = yaml.load(f.read(), Loader=yaml.SafeLoader)
|
cmpt_tpl = yaml.safe_load(f.read())
|
||||||
|
|
||||||
cmpt_services = cmpt_tpl[0]['ServicesDefault']
|
cmpt_services = cmpt_tpl[0]['ServicesDefault']
|
||||||
cmpt_services = [x for x in cmpt_services if (x not in exclude_service)]
|
cmpt_services = [x for x in cmpt_services if (x not in exclude_service)]
|
||||||
@ -621,7 +621,7 @@ def validate_docker_service_mysql_usage(filename, tpl):
|
|||||||
os.path.exists(newfilename.replace('.yaml', '.j2.yaml')):
|
os.path.exists(newfilename.replace('.yaml', '.j2.yaml')):
|
||||||
return # Skip for now if it's templated
|
return # Skip for now if it's templated
|
||||||
with open(newfilename, 'r') as newfile:
|
with open(newfilename, 'r') as newfile:
|
||||||
newtmp = yaml.load(newfile.read(), Loader=yaml.SafeLoader)
|
newtmp = yaml.safe_load(newfile.read())
|
||||||
read_all(newfilename, newtmp)
|
read_all(newfilename, newtmp)
|
||||||
|
|
||||||
read_all(filename, tpl)
|
read_all(filename, tpl)
|
||||||
@ -1080,7 +1080,7 @@ def validate(filename, param_map):
|
|||||||
retval = 0
|
retval = 0
|
||||||
try:
|
try:
|
||||||
with open(filename, 'r') as f:
|
with open(filename, 'r') as f:
|
||||||
tpl = yaml.load(f.read(), Loader=yaml.SafeLoader)
|
tpl = yaml.safe_load(f.read())
|
||||||
|
|
||||||
is_heat_template = 'heat_template_version' in tpl
|
is_heat_template = 'heat_template_version' in tpl
|
||||||
|
|
||||||
@ -1274,11 +1274,11 @@ def validate_upgrade_tasks(upgrade_tasks):
|
|||||||
def validate_network_data_file(data_file_path):
|
def validate_network_data_file(data_file_path):
|
||||||
try:
|
try:
|
||||||
with open(data_file_path, 'r') as data_file:
|
with open(data_file_path, 'r') as data_file:
|
||||||
data_file = yaml.load(data_file.read(), Loader=yaml.SafeLoader)
|
data_file = yaml.safe_load(data_file.read())
|
||||||
|
|
||||||
base_file_path = os.path.dirname(data_file_path) + "/network_data.yaml"
|
base_file_path = os.path.dirname(data_file_path) + "/network_data.yaml"
|
||||||
with open(base_file_path, 'r') as base_file:
|
with open(base_file_path, 'r') as base_file:
|
||||||
base_file = yaml.load(base_file.read(), Loader=yaml.SafeLoader)
|
base_file = yaml.safe_load(base_file.read())
|
||||||
|
|
||||||
retval = 0
|
retval = 0
|
||||||
for n in base_file:
|
for n in base_file:
|
||||||
|
Loading…
Reference in New Issue
Block a user