File size: 1,072 Bytes
105b369
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
from pathlib import Path
from typing import Optional, Any

from phi.k8s.api_client import K8sApiClient
from phi.k8s.enums.api_version import ApiVersion
from phi.k8s.enums.kind import Kind
from phi.k8s.resource.base import K8sResource
from phi.k8s.resource.meta.v1.object_meta import ObjectMeta


class YamlResource(K8sResource):
    resource_type: str = "Yaml"

    api_version: ApiVersion = ApiVersion.NA
    kind: Kind = Kind.YAML
    metadata: ObjectMeta = ObjectMeta()

    file: Optional[Path] = None
    dir: Optional[Path] = None
    url: Optional[str] = None

    @staticmethod
    def get_from_cluster(k8s_client: K8sApiClient, namespace: Optional[str] = None, **kwargs) -> None:
        # Not implemented for YamlResources
        return None

    def _create(self, k8s_client: K8sApiClient) -> bool:
        return True

    def _read(self, k8s_client: K8sApiClient) -> Optional[Any]:
        return None

    def _update(self, k8s_client: K8sApiClient) -> bool:
        return True

    def _delete(self, k8s_client: K8sApiClient) -> bool:
        return True