X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=n2vc%2Fk8s_conn.py;h=f692abce2149fb09fb4eec88b1019fe142cc5c2c;hb=513cb2d19abfbe5b3aea879bf1a0561ea211e7d4;hp=a4b98db7c937377e455c85051f37415fae78aebb;hpb=0ab522fe8c79942cfd3fad643071b579327c2087;p=osm%2FN2VC.git diff --git a/n2vc/k8s_conn.py b/n2vc/k8s_conn.py index a4b98db..f692abc 100644 --- a/n2vc/k8s_conn.py +++ b/n2vc/k8s_conn.py @@ -22,6 +22,7 @@ import abc import asyncio +from typing import Union import time from n2vc.loggable import Loggable @@ -328,6 +329,28 @@ class K8sConnector(abc.ABC, Loggable): :return: Returns the output of the action """ + @abc.abstractmethod + async def upgrade_charm( + self, + ee_id: str = None, + path: str = None, + charm_id: str = None, + charm_type: str = None, + timeout: float = None, + ) -> str: + """This method upgrade charms in VNFs + + Args: + ee_id: Execution environment id + path: Local path to the charm + charm_id: charm-id + charm_type: Charm type can be lxc-proxy-charm, native-charm or k8s-proxy-charm + timeout: (Float) Timeout for the ns update operation + + Returns: + The output of the update operation if status equals to "completed" + """ + @abc.abstractmethod async def inspect_kdu(self, kdu_model: str, repo_url: str = None) -> str: """ @@ -358,7 +381,9 @@ class K8sConnector(abc.ABC, Loggable): """ @abc.abstractmethod - async def status_kdu(self, cluster_uuid: str, kdu_instance: str) -> str: + async def status_kdu( + self, cluster_uuid: str, kdu_instance: str, yaml_format: str + ) -> Union[str, dict]: """ This call would retrieve tha current state of a given KDU instance. It would be would allow to retrieve the _composition_ (i.e. K8s objects) and _specific @@ -367,6 +392,8 @@ class K8sConnector(abc.ABC, Loggable): :param cluster_uuid: UUID of a K8s cluster known by OSM :param kdu_instance: unique name for the KDU instance + :param yaml_format: if the return shall be returned as an YAML string or as a + dictionary :return: If successful, it will return the following vector of arguments: - K8s `namespace` in the cluster where the KDU lives - `state` of the KDU instance. It can be: