#9656 Nightly test failure in test_ipa_idrange_fix.py::TestIpaIdrangeFix::test_idrange_no_rid_bases_reversed
Closed: fixed by frenaud. Opened by frenaud.

The nightly test test_ipa_idrange_fix.py::TestIpaIdrangeFix::test_idrange_no_rid_bases_reversed is failing. This test was added recently, with commit https://pagure.io/freeipa/c/01d90b4a53c6810499bfdb6495559e52b9f9001f?branch=master

Example of failure in nightly run 3957, with the following logs and report:

self = <ipatests.test_integration.test_ipa_idrange_fix.TestIpaIdrangeFix object at 0x7f10e9f07170>
    def test_idrange_no_rid_bases_reversed(self):
        """
        Test ipa-idrange-fix command with IDrange with no RID bases, but we
        previously had a range with RID bases reversed - secondary lower than
        primary. It is a valid configuration, so we should fix no-RID range.
        """
        self.master.run_command([
            "ipa",
            "idrange-add",
            "idrange_no_rid_bases",
            "--base-id", '10000',
            "--range-size", '20000',
        ])
>       self.master.run_command([
            "ipa",
            "idrange-add",
            "idrange_reversed",
            "--base-id", '50000',
            "--range-size", '20000',
            "--rid-base", '100300000'
            "--secondary-rid-base", '301000'
        ])
test_integration/test_ipa_idrange_fix.py:69: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
self = <ipatests.pytest_ipa.integration.host.Host master.ipa.test (master)>
argv = ['ipa', 'idrange-add', 'idrange_reversed', '--base-id', '50000', '--range-size', ...]
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', 'idrange-add', 'idrange_reversed', '--base-id', '50000', '--range-size', '20000', '--rid-base', '100300000--secondary-rid-base', '301000']' returned non-zero exit status 1.
pytest_ipa/integration/host.py:202: CalledProcessError
----------------------------- Captured stderr call -----------------------------
ipa: ERROR: stderr: ipa: ERROR: command 'idrange_add' takes at most 1 argument

The test source code is missing a comma before "--secondary-rid-base":
https://pagure.io/freeipa/blob/01d90b4a53c6810499bfdb6495559e52b9f9001f/f/ipatests/test_integration/test_ipa_idrange_fix.py#_69-76


master:

  • b9fc303e61e0b073649810a768d8ad5062d81426 ipatests: Add missing comma in test_idrange_no_rid_bases_reversed

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

ipa-4-12:

  • 4fef80a ipatests: Add missing comma in test_idrange_no_rid_bases_reversed
Metadata