|
@@ -29,13 +29,18 @@
|
|
|
# pylint: disable=wrong-import-order,wrong-import-position,unused-import
|
|
|
|
|
|
from __future__ import print_function # noqa: F401
|
|
|
+import copy # noqa: F401
|
|
|
import json # noqa: F401
|
|
|
import os # noqa: F401
|
|
|
import re # noqa: F401
|
|
|
-# pylint: disable=import-error
|
|
|
-import ruamel.yaml as yaml # noqa: F401
|
|
|
import shutil # noqa: F401
|
|
|
|
|
|
+# pylint: disable=import-error
|
|
|
+try:
|
|
|
+ import ruamel.yaml as yaml # noqa: F401
|
|
|
+except ImportError:
|
|
|
+ import yaml
|
|
|
+
|
|
|
from ansible.module_utils.basic import AnsibleModule
|
|
|
|
|
|
# -*- -*- -*- End included fragment: lib/import.py -*- -*- -*-
|
|
@@ -379,7 +384,11 @@ class Yedit(object):
|
|
|
if hasattr(self.yaml_dict, 'fa'):
|
|
|
self.yaml_dict.fa.set_block_style()
|
|
|
|
|
|
- Yedit._write(self.filename, yaml.dump(self.yaml_dict, Dumper=yaml.RoundTripDumper))
|
|
|
+ # pylint: disable=no-member
|
|
|
+ if hasattr(yaml, 'RoundTripDumper'):
|
|
|
+ Yedit._write(self.filename, yaml.dump(self.yaml_dict, Dumper=yaml.RoundTripDumper))
|
|
|
+ else:
|
|
|
+ Yedit._write(self.filename, yaml.dump(self.yaml_dict, default_flow_style=False))
|
|
|
|
|
|
return (True, self.yaml_dict)
|
|
|
|
|
@@ -419,7 +428,10 @@ class Yedit(object):
|
|
|
# check if it is yaml
|
|
|
try:
|
|
|
if content_type == 'yaml' and contents:
|
|
|
- self.yaml_dict = yaml.load(contents, yaml.RoundTripLoader)
|
|
|
+ if hasattr(yaml, 'RoundTripLoader'):
|
|
|
+ self.yaml_dict = yaml.load(contents, yaml.RoundTripLoader)
|
|
|
+ else:
|
|
|
+ self.yaml_dict = yaml.load(contents)
|
|
|
# pylint: disable=no-member
|
|
|
if hasattr(self.yaml_dict, 'fa'):
|
|
|
self.yaml_dict.fa.set_block_style()
|
|
@@ -587,12 +599,18 @@ class Yedit(object):
|
|
|
return (False, self.yaml_dict)
|
|
|
|
|
|
# deepcopy didn't work
|
|
|
- tmp_copy = yaml.load(yaml.round_trip_dump(self.yaml_dict,
|
|
|
- default_flow_style=False),
|
|
|
- yaml.RoundTripLoader)
|
|
|
- # pylint: disable=no-member
|
|
|
- if hasattr(self.yaml_dict, 'fa'):
|
|
|
- tmp_copy.fa.set_block_style()
|
|
|
+ if hasattr(yaml, 'round_trip_dump'):
|
|
|
+ tmp_copy = yaml.load(yaml.round_trip_dump(self.yaml_dict,
|
|
|
+ default_flow_style=False),
|
|
|
+ yaml.RoundTripLoader)
|
|
|
+
|
|
|
+ # pylint: disable=no-member
|
|
|
+ if hasattr(self.yaml_dict, 'fa'):
|
|
|
+ tmp_copy.fa.set_block_style()
|
|
|
+
|
|
|
+ else:
|
|
|
+ tmp_copy = copy.deepcopy(self.yaml_dict)
|
|
|
+
|
|
|
result = Yedit.add_entry(tmp_copy, path, value, self.separator)
|
|
|
if not result:
|
|
|
return (False, self.yaml_dict)
|
|
@@ -605,11 +623,15 @@ class Yedit(object):
|
|
|
''' create a yaml file '''
|
|
|
if not self.file_exists():
|
|
|
# deepcopy didn't work
|
|
|
- tmp_copy = yaml.load(yaml.round_trip_dump(self.yaml_dict, default_flow_style=False), # noqa: E501
|
|
|
- yaml.RoundTripLoader)
|
|
|
- # pylint: disable=no-member
|
|
|
- if hasattr(self.yaml_dict, 'fa'):
|
|
|
- tmp_copy.fa.set_block_style()
|
|
|
+ if hasattr(yaml, 'round_trip_dump'):
|
|
|
+ tmp_copy = yaml.load(yaml.round_trip_dump(self.yaml_dict, default_flow_style=False), # noqa: E501
|
|
|
+ yaml.RoundTripLoader)
|
|
|
+ # pylint: disable=no-member
|
|
|
+ if hasattr(self.yaml_dict, 'fa'):
|
|
|
+ tmp_copy.fa.set_block_style()
|
|
|
+ else:
|
|
|
+ tmp_copy = copy.deepcopy(self.yaml_dict)
|
|
|
+
|
|
|
result = Yedit.add_entry(tmp_copy, path, value, self.separator)
|
|
|
if result:
|
|
|
self.yaml_dict = tmp_copy
|