summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMads Jensen <mje@inducks.org>2020-04-14 09:21:22 +0200
committerGitHub <noreply@github.com>2020-04-14 09:21:22 +0200
commiteaf648e60093505d47b2918e58453fe9181ea517 (patch)
tree4a90ed477cfa75b6623b9a18742f32c63f686ba5
parent8077d8e40148fe77e2393caa5f2b2ea855149d63 (diff)
downloadansible-eaf648e60093505d47b2918e58453fe9181ea517.tar.gz
Use context manager in yum module. (#65376)
-rw-r--r--changelogs/fragments/65376.yaml2
-rw-r--r--lib/ansible/modules/packaging/os/yum_repository.py14
2 files changed, 5 insertions, 11 deletions
diff --git a/changelogs/fragments/65376.yaml b/changelogs/fragments/65376.yaml
new file mode 100644
index 0000000000..0d33b181b3
--- /dev/null
+++ b/changelogs/fragments/65376.yaml
@@ -0,0 +1,2 @@
+bugfixes:
+ - packaging_yum - replace legacy file handling with a file manager.
diff --git a/lib/ansible/modules/packaging/os/yum_repository.py b/lib/ansible/modules/packaging/os/yum_repository.py
index 17358736f0..a709156aab 100644
--- a/lib/ansible/modules/packaging/os/yum_repository.py
+++ b/lib/ansible/modules/packaging/os/yum_repository.py
@@ -506,19 +506,11 @@ class YumRepo(object):
if len(self.repofile.sections()):
# Write data into the file
try:
- fd = open(self.params['dest'], 'w')
+ with open(self.params['dest'], 'w') as fd:
+ self.repofile.write(fd)
except IOError as e:
self.module.fail_json(
- msg="Cannot open repo file %s." % self.params['dest'],
- details=to_native(e))
-
- self.repofile.write(fd)
-
- try:
- fd.close()
- except IOError as e:
- self.module.fail_json(
- msg="Cannot write repo file %s." % self.params['dest'],
+ msg="Problems handling file %s." % self.params['dest'],
details=to_native(e))
else:
# Remove the file if there are not repos