Kubernetes info subpackage (ska_tangoctl.k8s_info)
Read info using K8S API.
- class ska_tangoctl.k8s_info.KubernetesControl(logger: Logger)[source]
Do weird and wonderful things in a Kubernetes cluser.
- __weakref__
list of weak references to the object (if defined)
- exec_command(ns_name: str, pod_name: str, exec_command: list) str [source]
Execute command in pod.
- Parameters:
ns_name – namespace name
pod_name – pod name
exec_command – list making up command string
- Returns:
output
- get_namespaces_dict() dict [source]
Get a list of Kubernetes namespaces.
- Returns:
dictionary of namespaces
- get_namespaces_list(kube_namespace: str | None) list [source]
Get a list of Kubernetes namespaces.
- Parameters:
kube_namespace – K8S namespace regex
- Returns:
list of namespaces
- get_pod(ipod: Any, ns_name: str | None, pod_name: str | None) Tuple[str | None, str | None, str | None] [source]
Read pod information.
- Parameters:
ipod – pod handle
ns_name – namespace name
pod_name – pod name
- Returns:
pod name, IP address and namespace
- get_pods(ns_name: str | None, pod_name: str | None) dict [source]
Read pods information.
- Parameters:
ns_name – namespace name
pod_name – pod name
- Returns:
dict with pod name, IP address and namespace
- get_service(isvc: Any, ns_name: str | None, svc_name: str | None) Tuple[Any, Any, Any, str | None, Any] [source]
Read service information.
- Parameters:
isvc – service handle
ns_name – namespace name
svc_name – service name
- Returns:
tuple with pod name, IP address and namespace
- get_service_addr(isvc: Any, ns_name: str | None, svc_name: str | None) Tuple[str | None, str | None, str | None, str | None, str | None] [source]
Get IP address for K8S service.
- Parameters:
isvc – K8S service handle
ns_name – namespace
svc_name – service name
- Returns:
tuple with service name, namespace, IP address, port, protocol