def test_create_from_registry(self):
        """Test whether a meta object is correctly created from a registry entry"""

        meta = KibanaObjMeta.create_from_registry(DASHBOARD_REG_ENTRY)
        self.assertEqual(meta.id, "2e968fe0-b1bb-11e8-8aac-ef7fd4d8cbad")
        self.assertEqual(meta.title, "GitLab Issues")
        self.assertEqual(meta.type, "dashboard")
        self.assertEqual(meta.version, 9)
        self.assertEqual(meta.updated_at, "2019-01-24T13:20:08.902Z")

        meta = KibanaObjMeta.create_from_registry(DASHBOARD_REG_ENTRY_NO_UPDATED_AT)
        self.assertEqual(meta.id, "2e968fe0-b1bb-11e8-8aac-ef7fd4d8cbad")
        self.assertEqual(meta.title, "GitLab Issues")
        self.assertEqual(meta.type, "dashboard")
        self.assertEqual(meta.version, 9)
        self.assertIsNone(meta.updated_at)
示例#2
0
    def find_all(self, obj_type=None):
        """Find all meta information related to the Kibana objects stored in the registry.

        This method returns the KibanaObjMeta in the registry. If `obj_type` is None, it returns the
        content of all the registry. Otherwise, it returns the entries related to the
        aliases with the given `obj_type`.

        :param obj_type: target object type

        :returns a generator of tuples of aliases and metadata in the registry
        """
        if obj_type:
            for alias in self.content.keys():
                if self.content[alias]['type'] == obj_type:
                    meta = KibanaObjMeta.create_from_registry(self.content[alias])
                    yield alias, meta
        else:
            for alias in self.content.keys():
                meta = KibanaObjMeta.create_from_registry(self.content[alias])
                yield alias, meta
示例#3
0
    def find(self, alias):
        """Find the meta information of a Kibana object based on its alias.

        This method retrieves from the registry the target alias and
        KibanaObjMeta linked to it.

        :param alias: target alias

        :returns a tuple composed of an alias and metadata
        """
        if alias not in self.content:
            cause = "Alias %s not found in registry" % alias
            logger.error(cause)
            raise NotFoundError(cause=cause)

        meta = KibanaObjMeta.create_from_registry(self.content[alias])
        return alias, meta