Esempio n. 1
0
    def ListSourceCustomResourceDefinitions(self):
        """Returns a list of CRDs for event sources."""
        # Passing the parent field is only needed for hosted, but shouldn't hurt
        # against an actual cluster
        namespace_ref = resources.REGISTRY.Parse(
            properties.VALUES.core.project.Get(),
            collection='anthosevents.namespaces',
            api_version=self._api_version)

        messages = self._crd_client.MESSAGES_MODULE
        request = messages.AnthoseventsCustomresourcedefinitionsListRequest(
            parent=namespace_ref.RelativeName(),
            labelSelector=_EVENT_SOURCES_LABEL_SELECTOR)
        with metrics.RecordDuration(metric_names.LIST_SOURCE_CRDS):
            response = self._crd_client.customresourcedefinitions.List(request)
        source_crds = [
            custom_resource_definition.SourceCustomResourceDefinition(
                item, messages) for item in response.items
        ]

        # The customresourcedefinition received in listResponse is missing their
        # apiVersion's (intended), so manually insert apiVersion from listResponse.
        for source_crd in source_crds:
            source_crd.setApiVersion(response.apiVersion)

        # Only include CRDs for source kinds that are defined in the api.
        return [
            s for s in source_crds if hasattr(self.messages, s.source_kind)
        ]
Esempio n. 2
0
 def ListSourceCustomResourceDefinitions(self):
     """Returns a list of CRDs for event sources."""
     messages = self._crd_client.MESSAGES_MODULE
     request = messages.RunCustomresourcedefinitionsListRequest(
         labelSelector=_EVENT_SOURCES_LABEL_SELECTOR)
     with metrics.RecordDuration(metric_names.LIST_SOURCE_CRDS):
         response = self._crd_client.customresourcedefinitions.List(request)
     return [
         custom_resource_definition.SourceCustomResourceDefinition(
             item, messages) for item in response.items
     ]
 def ListSourceCustomResourceDefinitions(self):
   """Returns a list of CRDs for event sources."""
   messages = self._crd_client.MESSAGES_MODULE
   request = messages.RunCustomresourcedefinitionsListRequest(
       labelSelector=_EVENT_SOURCES_LABEL_SELECTOR)
   with metrics.RecordDuration(metric_names.LIST_SOURCE_CRDS):
     response = self._crd_client.customresourcedefinitions.List(request)
   source_crds = [
       custom_resource_definition.SourceCustomResourceDefinition(
           item, messages) for item in response.items
   ]
   # Only include CRDs for source kinds that are defined in the api.
   return [s for s in source_crds if hasattr(self.messages, s.source_kind)]
    def ListSourceCustomResourceDefinitions(self):
        """Returns a list of CRDs for event sources."""
        # Passing the parent field is only needed for hosted, but shouldn't hurt
        # against an actual cluster
        namespace_ref = resources.REGISTRY.Parse(
            properties.VALUES.core.project.Get(),
            collection='run.namespaces',
            api_version=resource_args.EVENTS_ALPHA_API_VERSION)

        messages = self._crd_client.MESSAGES_MODULE
        request = messages.RunCustomresourcedefinitionsListRequest(
            parent=namespace_ref.RelativeName(),
            labelSelector=_EVENT_SOURCES_LABEL_SELECTOR)
        with metrics.RecordDuration(metric_names.LIST_SOURCE_CRDS):
            response = self._crd_client.customresourcedefinitions.List(request)
        source_crds = [
            custom_resource_definition.SourceCustomResourceDefinition(
                item, messages) for item in response.items
        ]
        # Only include CRDs for source kinds that are defined in the api.
        return [
            s for s in source_crds if hasattr(self.messages, s.source_kind)
        ]