Skip to main content

TaskPluginRegistry

This class defines an interface for a registry that manages different types of task plugins. It provides methods to register Kubernetes, core, and remote plugins, and to retrieve lists of registered core and Kubernetes plugins.

Methods


RegisterK8sPlugin()

@classmethod
def RegisterK8sPlugin(
info: k8s.PluginEntry
)

Registers a Kubernetes plugin with the registry. This method is used to make a Kubernetes-specific plugin available for use within the system.

Parameters

NameTypeDescription
infok8s.PluginEntryThe information about the Kubernetes plugin to register, including its metadata and entry points.

RegisterCorePlugin()

@classmethod
def RegisterCorePlugin(
info: core.PluginEntry
)

Registers a core plugin with the registry. This method is used to make a fundamental system plugin available for use.

Parameters

NameTypeDescription
infocore.PluginEntryThe information about the core plugin to register, including its metadata and entry points.

RegisterRemotePlugin()

@classmethod
def RegisterRemotePlugin(
info: webapi.PluginEntry
)

Registers a remote plugin with the registry. This method is used to make a plugin accessible via a web API available for use.

Parameters

NameTypeDescription
infowebapi.PluginEntryThe information about the remote plugin to register, including its metadata and web API details.

GetCorePlugins()

@classmethod
def GetCorePlugins() - > []core.PluginEntry

Retrieves a list of all registered core plugins. Callers use this to discover and interact with the core functionalities available in the system.

Returns

TypeDescription
[]core.PluginEntryA slice of PluginEntry objects, each representing a registered core plugin.

GetK8sPlugins()

@classmethod
def GetK8sPlugins() - > []k8s.PluginEntry

Retrieves a list of all registered Kubernetes plugins. Callers use this to discover and interact with Kubernetes-specific functionalities available in the system.

Returns

TypeDescription
[]k8s.PluginEntryA slice of PluginEntry objects, each representing a registered Kubernetes plugin.