diff --git a/changelogs/fragments/65608.yml b/changelogs/fragments/65608.yml new file mode 100644 index 00000000000..198c5ee3c20 --- /dev/null +++ b/changelogs/fragments/65608.yml @@ -0,0 +1,2 @@ +bugfixes: + - azure_storageblob - use os.access to check for read rights. diff --git a/lib/ansible/modules/cloud/azure/azure_rm_storageblob.py b/lib/ansible/modules/cloud/azure/azure_rm_storageblob.py index 0833640cf6a..d77255d9cba 100644 --- a/lib/ansible/modules/cloud/azure/azure_rm_storageblob.py +++ b/lib/ansible/modules/cloud/azure/azure_rm_storageblob.py @@ -412,13 +412,10 @@ class AzureRMStorageBlob(AzureRMModuleBase): def src_is_valid(self): if not os.path.isfile(self.src): self.fail("The source path must be a file.") - try: - fp = open(self.src, 'r') - fp.close() - except IOError: - self.fail("Failed to access {0}. Make sure the file exists and that you have " - "read access.".format(self.src)) - return True + if os.access(self.src, os.R_OK): + return True + self.fail("Failed to access {0}. Make sure the file exists and that you have " + "read access.".format(self.src)) def dest_is_valid(self): if not self.check_mode: