X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FN2VC.git;a=blobdiff_plain;f=n2vc%2Fk8s_conn.py;h=5bdc8acb2c6e804205d50510d612dafae9116be3;hp=a3ad29aa3529d01a1545274c133e29d8d9bfbaf0;hb=2c791b34626ff76ab1886a110599998f9de0df80;hpb=f52cb7cfeb4e24febe7c66af3d5bb275a50d7f99 diff --git a/n2vc/k8s_conn.py b/n2vc/k8s_conn.py index a3ad29a..5bdc8ac 100644 --- a/n2vc/k8s_conn.py +++ b/n2vc/k8s_conn.py @@ -312,6 +312,48 @@ class K8sConnector(abc.ABC, Loggable): """ + @abc.abstractmethod + async def get_services(self, + cluster_uuid: str, + kdu_instance: str, + namespace: str) -> list: + """ + Returns a list of services defined for the specified kdu instance. + + :param cluster_uuid: UUID of a K8s cluster known by OSM + :param kdu_instance: unique name for the KDU instance + :param namespace: K8s namespace used by the KDU instance + :return: If successful, it will return a list of services, Each service + can have the following data: + - `name` of the service + - `type` type of service in the k8 cluster + - `ports` List of ports offered by the service, for each port includes at least + name, port, protocol + - `cluster_ip` Internal ip to be used inside k8s cluster + - `external_ip` List of external ips (in case they are available) + """ + + @abc.abstractmethod + async def get_service(self, + cluster_uuid: str, + service_name: str, + namespace: str = None) -> object: + """ + Obtains the data of the specified service in the k8cluster. + + :param cluster_uuid: UUID of a K8s cluster known by OSM + :param service_name: name of the K8s service in the specified namespace + :param namespace: K8s namespace used by the KDU instance + :return: If successful, it will return a list of services, Each service can have + the following data: + - `name` of the service + - `type` type of service in the k8 cluster + - `ports` List of ports offered by the service, for each port includes at least + name, port, protocol + - `cluster_ip` Internal ip to be used inside k8s cluster + - `external_ip` List of external ips (in case they are available) + """ + """ #################################################################################### ################################### P R I V A T E ##################################