Skip to content

Kubernetes Resources

Kyku supports managing Kubernetes-native resources alongside your cloud infrastructure. After provisioning a KubernetesCluster resource, you can define workloads, configuration, networking, and storage directly in your Kyku config.

All K8s resources share a common base that links them to a cluster:

Property Type Required Description
cluster KubernetesCluster | string The cluster to deploy into
namespace K8sNamespace | string Target namespace (defaults to default)
dependsOn string[] Explicit dependency ordering
Resource Purpose
K8sNamespace Isolated environment within the cluster
K8sConfigMap Non-confidential key-value configuration data
K8sSecret Sensitive data (credentials, tokens, keys)
K8sPersistentVolumeClaim Persistent storage request
K8sDeployment Stateless workload with replicas and rolling updates
K8sStatefulSet Stateful workload with stable network identity and storage
K8sService Network endpoint exposing pods
K8sIngress HTTP/S routing to services
K8sManifest Raw Kubernetes manifest (inline, file, or directory)
K8sHelmRelease Helm chart deployment
Resource Kubernetes
All K8s resources

K8s resources participate in the Kyku dependency graph. The planner automatically resolves the creation order:

K8sNamespace ──┐
├── K8sConfigMap ──┐
├── K8sSecret ─────┤
├── K8sPersistentVolumeClaim ──┤
│ ├── K8sDeployment ──┐
│ ├── K8sStatefulSet ─┤
│ ├── K8sService ──┐
│ ├── K8sIngress
└── K8sManifest / K8sHelmRelease (independently)

Use kyku graph to verify the dependency chain before applying.