Kubernetes Abstractions
cloudspells.core.abstractions.kubernetes
Cloud-neutral Kubernetes abstractions for CloudSpells multi-cloud support.
Exports
AbstractKubernetes: Interface for a managed Kubernetes cluster.
AbstractKubernetes
Bases: ABC
Interface for a managed Kubernetes cluster.
Provider implementations (OCI OkeCluster,
AWS EksCluster, GCP GkeCluster) satisfy this interface.
Attributes:
| Name | Type | Description |
|---|---|---|
id |
Output[str]
|
Provider resource ID of the cluster. |
Example
def export_cluster(cluster: AbstractKubernetes, label: str) -> None:
pulumi.export(f"{label}_cluster_id", cluster.id)
export_cluster(oke_cluster, "oci_k8s")
Source code in packages/cloudspells-core/src/cloudspells/core/abstractions/kubernetes.py
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 39 40 41 42 43 44 45 | |
export() -> None
abstractmethod
Publish standard Kubernetes cluster stack outputs.
Source code in packages/cloudspells-core/src/cloudspells/core/abstractions/kubernetes.py
34 35 36 | |
create_kubeconfig(filename: str) -> None
abstractmethod
Write a kubeconfig file for this cluster.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
filename
|
str
|
Absolute or relative path where the kubeconfig file
should be written (e.g. |
required |
Source code in packages/cloudspells-core/src/cloudspells/core/abstractions/kubernetes.py
38 39 40 41 42 43 44 45 | |