diff --git a/changelogs/fragments/apt_repository-no-tty.yaml b/changelogs/fragments/apt_repository-no-tty.yaml new file mode 100644 index 00000000000..891ba78c42a --- /dev/null +++ b/changelogs/fragments/apt_repository-no-tty.yaml @@ -0,0 +1,2 @@ +bugfixes: + - apt_repository - do not require a tty to prevent errors parsing GPG keys (https://github.com/ansible/ansible/issues/49949) diff --git a/lib/ansible/modules/packaging/os/apt_repository.py b/lib/ansible/modules/packaging/os/apt_repository.py index 86f63221470..e6fa46a1f62 100644 --- a/lib/ansible/modules/packaging/os/apt_repository.py +++ b/lib/ansible/modules/packaging/os/apt_repository.py @@ -430,7 +430,7 @@ class UbuntuSourcesList(SourcesList): if self.add_ppa_signing_keys_callback is not None: info = self._get_ppa_info(ppa_owner, ppa_name) if not self._key_already_exists(info['signing_key_fingerprint']): - command = ['apt-key', 'adv', '--recv-keys', '--keyserver', 'hkp://keyserver.ubuntu.com:80', info['signing_key_fingerprint']] + command = ['apt-key', 'adv', '--recv-keys', '--no-tty', '--keyserver', 'hkp://keyserver.ubuntu.com:80', info['signing_key_fingerprint']] self.add_ppa_signing_keys_callback(command) file = file or self._suggest_filename('%s_%s' % (line, self.codename))