#8292 Nightly failure (rawhide) in ipa-server-install: gpg-agent command returns 127
Closed: worksforme by frenaud. Opened by frenaud.

The nightly tests on rawhide failed during ipa-server-install --external-ca with a call to gpg-agent. Please see PR 4585 with logs:

self = <ipatests.test_integration.test_external_ca.TestExternalCAInvalidCert object at 0x7f50595803d0>
    def test_external_ca(self):
        # Step 1 of ipa-server-install.
>       install_server_external_ca_step1(self.master)
test_integration/test_external_ca.py:375: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
test_integration/test_external_ca.py:79: in install_server_external_ca_step1
    return tasks.install_master(
pytest_ipa/integration/tasks.py:389: in install_master
    result = host.run_command(args, raiseonerr=raiseonerr,
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
self = <ipatests.pytest_ipa.integration.host.Host master.ipa.test (master)>
argv = ['ipa-server-install', '-n', 'ipa.test', '-r', 'IPA.TEST', '-p', ...]
set_env = True, stdin_text = None, log_stdout = True, raiseonerr = True
cwd = None, bg = False, encoding = 'utf-8', ok_returncode = 0
    def run_command(self, argv, set_env=True, stdin_text=None,
                    log_stdout=True, raiseonerr=True,
                    cwd=None, bg=False, encoding='utf-8', ok_returncode=0):
        """Wrapper around run_command to log stderr on raiseonerr=True
        :param ok_returncode: return code considered to be correct,
                              you can pass an integer or sequence of integers
        """
        result = super().run_command(
            argv, set_env=set_env, stdin_text=stdin_text,
            log_stdout=log_stdout, raiseonerr=False, cwd=cwd, bg=bg,
            encoding=encoding
        )
        # in FIPS mode SSH may print noise to stderr, remove the string
        # "FIPS mode initialized" + optional newline.
        result.stderr_bytes = FIPS_NOISE_RE.sub(b'', result.stderr_bytes)
        try:
            result_ok = result.returncode in ok_returncode
        except TypeError:
            result_ok = result.returncode == ok_returncode
        if not result_ok and raiseonerr:
            result.log.error('stderr: %s', result.stderr_text)
>           raise subprocess.CalledProcessError(
                result.returncode, argv,
                result.stdout_text, result.stderr_text
            )
E           subprocess.CalledProcessError: Command '['ipa-server-install', '-n', 'ipa.test', '-r', 'IPA.TEST', '-p', 'Secret.123', '-a', 'Secret.123', '--domain-level=1', '-U', '--setup-dns', '--forwarder', '192.168.122.1', '--auto-reverse', '--external-ca']' returned non-zero exit status 1.
pytest_ipa/integration/host.py:194: CalledProcessError
 -----------------------------Captured stdout setup------------------------------ 
<ipatests.pytest_ipa.integration.config.Config object at 0x7f505966d760>
 -------------------------------Captured log setup------------------------------- 
INFO     ipatests.pytest_ipa.integration:__init__.py:266 Preparing host master.ipa.test
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.IPAOpenSSHTransport:transport.py:46 SSH invocation: ['ssh', '-l', 'root', '-o', 'ControlPath=/tmp/multihost_tests.9wqg3ouy/control', '-o', 'StrictHostKeyChecking=no', '-o', 'UserKnownHostsFile=/tmp/multihost_tests.9wqg3ouy/known_hosts', '-i', '/root/.ssh/freeipa_pr_ci_insecure', 'master.ipa.test']
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd1:transport.py:513 RUN ['-o', 'ControlMaster=yes', '/usr/bin/cat']
INFO     ipatests.pytest_ipa.integration.host.Host.master.IPAOpenSSHTransport:transport.py:391 RUN ['true']
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd2:transport.py:513 RUN ['true']
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd2:transport.py:557 Warning: Permanently added 'master.ipa.test,192.168.122.208' (ECDSA) to the list of known hosts.
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd2:transport.py:557 bash: line 1: cd: /ipatests: No such file or directory
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd2:transport.py:217 Exit code: 0
INFO     ipatests.pytest_ipa.integration:__init__.py:259 Adding master.ipa.test:/ipatests/env.sh to list of logs to collect
INFO     ipatests.pytest_ipa.integration.host.Host.master.IPAOpenSSHTransport:transport.py:415 STAT /ipatests
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd3:transport.py:513 RUN ['ls', '/ipatests']
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd3:transport.py:557 ls: cannot access '/ipatests': No such file or directory
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd3:transport.py:217 Exit code: 2
INFO     ipatests.pytest_ipa.integration.host.Host.master.IPAOpenSSHTransport:transport.py:415 STAT /
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd4:transport.py:513 RUN ['ls', '/']
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd4:transport.py:217 Exit code: 0
INFO     ipatests.pytest_ipa.integration.host.Host.master.IPAOpenSSHTransport:transport.py:422 MKDIR /ipatests
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd5:transport.py:513 RUN ['mkdir', '/ipatests']
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd5:transport.py:217 Exit code: 0
INFO     ipatests.pytest_ipa.integration.host.Host.master.IPAOpenSSHTransport:transport.py:427 PUT /ipatests/env.sh
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd6:transport.py:513 RUN ['tee', '/ipatests/env.sh']
DEBUG    ipatests.pytest_ipa.integration.host.Host.master.cmd6:transport.py:217 Exit code: 0
 ------------------------------Captured stderr call------------------------------ 
[ipatests.pytest_ipa.integration.host.Host.master.cmd29] Done configuring Kerberos KDC (krb5kdc).
[ipatests.pytest_ipa.integration.host.Host.master.cmd29] Configuring kadmin
[ipatests.pytest_ipa.integration.host.Host.master.cmd29]   [1/2]: starting kadmin 
[ipatests.pytest_ipa.integration.host.Host.master.cmd29]   [2/2]: configuring kadmin to start on boot
[ipatests.pytest_ipa.integration.host.Host.master.cmd29] Done configuring kadmin.
[ipatests.pytest_ipa.integration.host.Host.master.cmd29] Configuring ipa-custodia
[ipatests.pytest_ipa.integration.host.Host.master.cmd29]   [1/5]: Making sure custodia container exists
[ipatests.pytest_ipa.integration.host.Host.master.cmd29]   [2/5]: Generating ipa-custodia config file
[ipatests.pytest_ipa.integration.host.Host.master.cmd29]   [3/5]: Generating ipa-custodia keys
[ipatests.pytest_ipa.integration.host.Host.master.cmd29]   [4/5]: starting ipa-custodia 
[ipatests.pytest_ipa.integration.host.Host.master.cmd29]   [5/5]: configuring ipa-custodia to start on boot
[ipatests.pytest_ipa.integration.host.Host.master.cmd29] Done configuring ipa-custodia.
[ipatests.pytest_ipa.integration.host.Host.master.cmd29] CalledProcessError(Command ['/usr/bin/gpg-agent', '--batch', '--homedir', '/tmp/tmpxps_u6hhipa/ipa-eovv0487', '--daemon', '/usr/bin/gpg2', '--batch', '--homedir', '/tmp/tmpxps_u6hhipa/ipa-eovv0487', '--passphrase-fd', '0', '--yes', '--no-tty', '-o', '/root/.ipa_cache', '-c', '/tmp/tmpxps_u6hhipa/cache'] returned non-zero exit status 127)
[ipatests.pytest_ipa.integration.host.Host.master.cmd29] The ipa-server-install command failed. See /var/log/ipaserver-install.log for more information
[ipatests.pytest_ipa.integration.host.Host.master.cmd29] Exit code: 1
ipa: ERROR: stderr: Checking DNS domain ipa.test., please wait ...
Checking DNS domain 122.168.192.in-addr.arpa., please wait ...
Reverse zone 122.168.192.in-addr.arpa. will be created
Synchronizing time
No SRV records of NTP servers found and no NTP server or pool address was provided.
Attempting to sync time with chronyc.
Process chronyc waitsync failed to sync time!
Unable to sync time with chrony server, assuming the time is in sync. Please check that 123 UDP port is opened, and any time server is on network.
CalledProcessError(Command ['/usr/bin/gpg-agent', '--batch', '--homedir', '/tmp/tmpxps_u6hhipa/ipa-eovv0487', '--daemon', '/usr/bin/gpg2', '--batch', '--homedir', '/tmp/tmpxps_u6hhipa/ipa-eovv0487', '--passphrase-fd', '0', '--yes', '--no-tty', '-o', '/root/.ipa_cache', '-c', '/tmp/tmpxps_u6hhipa/cache'] returned non-zero exit status 127)
The ipa-server-install command failed. See /var/log/ipaserver-install.log for more information

Metadata Update from @frenaud:
- Issue tagged with: test-failure, tests

It's probably the same issue as #8293. gpg-agent uses libgcrypt, too.

libgcrypt has been updated to libgcrypt-1.8.5-6.fc33.x86_64 in rawhide and the issue doesn't happen anymore, see PR 4629, hence closing.

Metadata Update from @frenaud:
- Issue close_status updated to: worksforme
- Issue status updated to: Closed (was: Open)

Metadata