#8800 Nightly test suite failure: test_ipahealthcheck - Domain 0 not configured
Closed: fixed by frenaud. Opened by mpolovka.

Whole test suite test_ipahealthcheck is failing in setup phase in [testing_ipa-4.9_latest] Nightly PR #823 with an error:

self = <ipatests.pytest_ipa.integration.config.Config object at 0x7f36421804f0>
descriptions = [{'hosts': {'client': 1, 'master': 1, 'replica': 1}, 'type': 'IPA'}]
    def filter(self, descriptions):
        """Destructively filters hosts and orders domains to fit description
        By default make_multihost_fixture() skips a test case, when filter()
        returns a FilterError. Let's turn FilterError into a fatal error
        instead.
        """
        try:
>           super(Config, self).filter(descriptions)
pytest_ipa/integration/config.py:118: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
self = <ipatests.pytest_ipa.integration.config.Config object at 0x7f36421804f0>
descriptions = [{'hosts': {'client': 1, 'master': 1, 'replica': 1}, 'type': 'IPA'}]
    def filter(self, descriptions):
        """Destructively filters hosts and orders domains to fit description
        :param descriptions:
            List of dicts such as:
                [
                    {
                        'type': 'ipa',
                        'hosts': {
                            'master': 1,
                            'replica': 2,
                        },
                    },
                ]
            i.e. the "type" is a type of domain, and "hosts" a dict mapping
            host roles to the number of hosts of this role that are required.
        """
        unique_domain_types = set(d.get('type', 'default')
                                  for d in descriptions)
        if len(descriptions) != len(unique_domain_types):
            # TODO: The greedy algorithm used to match domains may not yield
            # the correct result if there are several domains of the same type.
            raise ValueError('Duplicate domain type not supported')
        new_domains = []
        for i, description in enumerate(descriptions):
            for domain in list(self.domains):
                if domain.fits(description):
                    domain.filter(description['hosts'])
                    new_domains.append(domain)
                    self.domains.remove(domain)
                    break
            else:
>               raise FilterError(
                    'Domain %s not configured: %s' % (i, description))
E               pytest_multihost.config.FilterError: Domain 0 not configured: {'type': 'IPA', 'hosts': {'master': 1, 'replica': 1, 'client': 1}}

Full logs


This issue is fixed by the following commits:
- master branch: e8e456e ipatests: TestIpaHealthCheck now needs 1 client
- ipa-4-9 branch: 03dfd01 ipatests: TestIpaHealthCheck now needs 1 client

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

Metadata