[cloud][aws] Use with
statement for file rw in EC2 dynamic inventory (#21390)
* Use with statement when doing rw on files * Deserialize file-like object directly instead of a string For python 2/3 compatibility reasons, per PR feedback.
This commit is contained in:
parent
a077aeb693
commit
413dfa7273
1 changed files with 7 additions and 11 deletions
|
@ -1519,26 +1519,22 @@ class Ec2Inventory(object):
|
|||
''' Reads the inventory from the cache file and returns it as a JSON
|
||||
object '''
|
||||
|
||||
cache = open(self.cache_path_cache, 'r')
|
||||
json_inventory = cache.read()
|
||||
return json_inventory
|
||||
|
||||
with open(self.cache_path_cache, 'r') as f:
|
||||
json_inventory = f.read()
|
||||
return json_inventory
|
||||
|
||||
def load_index_from_cache(self):
|
||||
''' Reads the index from the cache file sets self.index '''
|
||||
|
||||
cache = open(self.cache_path_index, 'r')
|
||||
json_index = cache.read()
|
||||
self.index = json.loads(json_index)
|
||||
|
||||
with open(self.cache_path_index, 'r') as f:
|
||||
self.index = json.load(f)
|
||||
|
||||
def write_to_cache(self, data, filename):
|
||||
''' Writes data in JSON format to a file '''
|
||||
|
||||
json_data = self.json_format_dict(data, True)
|
||||
cache = open(filename, 'w')
|
||||
cache.write(json_data)
|
||||
cache.close()
|
||||
with open(filename, 'w') as f:
|
||||
f.write(json_data)
|
||||
|
||||
def uncammelize(self, key):
|
||||
temp = re.sub('(.)([A-Z][a-z]+)', r'\1_\2', key)
|
||||
|
|
Loading…
Reference in a new issue