Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ansible/ansible.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Coca <bcoca@users.noreply.github.com>2022-10-28 02:37:19 +0300
committerGitHub <noreply@github.com>2022-10-28 02:37:19 +0300
commit0f18ddca9f4b04cacd85a8a54a6fcc8f8b2ee38e (patch)
tree3850464110047df025298451b788de94e4d06e9e
parentaaab0791d9507b64ea04903bf35500c87ebb33b4 (diff)
mention acl in permissions errors (#79209)
as chmod/mode is not the only thing we attempt and Ubuntu not shipping acl in newer versions can lead to some confusion fixes #79146
-rw-r--r--changelogs/fragments/mention_acl.yml2
-rw-r--r--lib/ansible/plugins/action/__init__.py8
-rw-r--r--test/units/plugins/action/test_action.py2
3 files changed, 7 insertions, 5 deletions
diff --git a/changelogs/fragments/mention_acl.yml b/changelogs/fragments/mention_acl.yml
new file mode 100644
index 00000000000..bb8093d7c9a
--- /dev/null
+++ b/changelogs/fragments/mention_acl.yml
@@ -0,0 +1,2 @@
+bugfixes:
+ - updated error messages to include 'acl' and not just mode changes when failing to set required permissions on remote.
diff --git a/lib/ansible/plugins/action/__init__.py b/lib/ansible/plugins/action/__init__.py
index 7db6137805e..d199207cce3 100644
--- a/lib/ansible/plugins/action/__init__.py
+++ b/lib/ansible/plugins/action/__init__.py
@@ -674,7 +674,7 @@ class ActionBase(ABC):
res = self._remote_chmod(remote_paths, 'u+x')
if res['rc'] != 0:
raise AnsibleError(
- 'Failed to set file mode on remote temporary files '
+ 'Failed to set file mode or acl on remote temporary files '
'(rc: {0}, err: {1})'.format(
res['rc'],
to_native(res['stderr'])))
@@ -689,9 +689,9 @@ class ActionBase(ABC):
if remote_user in self._get_admin_users():
raise AnsibleError(
'Failed to change ownership of the temporary files Ansible '
- 'needs to create despite connecting as a privileged user. '
- 'Unprivileged become user would be unable to read the '
- 'file.')
+ '(via chmod nor setfacl) needs to create despite connecting as a '
+ 'privileged user. Unprivileged become user would be unable to read'
+ ' the file.')
# Step 3d: Try macOS's special chmod + ACL
# macOS chmod's +a flag takes its own argument. As a slight hack, we
diff --git a/test/units/plugins/action/test_action.py b/test/units/plugins/action/test_action.py
index 74b08e38f63..f2bbe19470f 100644
--- a/test/units/plugins/action/test_action.py
+++ b/test/units/plugins/action/test_action.py
@@ -427,7 +427,7 @@ class TestActionBase(unittest.TestCase):
'stderr': '',
}
assertThrowRegex(
- 'Failed to set file mode on remote temporary file',
+ 'Failed to set file mode or acl on remote temporary files',
execute=True)
action_base._remote_chmod.return_value = {
'rc': 0,