How manusa/yakc works
YAKC is a lower-level Java client for Kubernetes and related APIs. A caller creates a client, selects an API interface, and performs REST operations; the client returns Kubernetes resources represented by model classes. The repository also provides API/model modules for extensions including cert-manager, Chaos Mesh, Dapr, Istio, and OpenShift. API-interface and model behavior is visible in sampled files; the central client implementation and several extension sources were not sampled, so their internal wiring is shown only at the documented module level.
Main entry points: StorageV1Api.java Kubernetes API · CertManagerIoV1Api.java cert-manager API · ChaosMeshOrgV1alpha1Api.java Chaos Mesh API · StoragemigrationV1alpha1Api.java Storage migration API
Components 13
Client access
- Kubernetes client
Kubernetes APIs
- Kubernetes API
kubernetes-api/src/api/java/com/marcnuri/yakc/api/storage/v1/StorageV1Api.java - Storage migration API
kubernetes-api/src/api/java/com/marcnuri/yakc/api/storagemigration/v1alpha1/StoragemigrationV1alpha1Api.java
Resource models
- Kubernetes models
kubernetes-api/src/api/java/com/marcnuri/yakc/api/storage/v1/StorageV1Api.java
Extension APIs
- cert-manager API
apis/cert-manager/src/api/java/com/marcnuri/yakc/api/certmanagerio/v1/CertManagerIoV1Api.java - Certificate models
apis/cert-manager/src/model/java/com/marcnuri/yakc/model/io/certmanager/v1/Certificate.java - Chaos Mesh API
apis/chaos-mesh/src/api/java/com/marcnuri/yakc/api/chaosmeshorg/v1alpha1/ChaosMeshOrgV1alpha1Api.java - Chaos models
apis/chaos-mesh/src/model/java/com/marcnuri/yakc/model/org/chaosmesh/v1alpha1/NetworkChaos.java - Dapr API
apis/dapr - Istio API
apis/istio - OpenShift models
apis/openshift/src/model/java/com/marcnuri/yakc/model/com/coreos/monitoring/v1/AlertmanagerSpecStorageVolumeClaimTemplateSpec.java
Other components
- Java application
- Kubernetes API server
Connections 17
- Java application → Kubernetes client: creates
- Kubernetes client → Kubernetes API: creates API
- Kubernetes client → Storage migration API: creates API
- Kubernetes client → cert-manager API: creates API
- Kubernetes client → Chaos Mesh API: creates API
- Kubernetes client → Dapr API: creates API
- Kubernetes client → Istio API: creates API
- Kubernetes API → Kubernetes API server: REST requests
- Storage migration API → Kubernetes API server: REST requests
- cert-manager API → Kubernetes API server: REST requests
- Chaos Mesh API → Kubernetes API server: REST requests
- Dapr API → Kubernetes API server: REST requests
- Istio API → Kubernetes API server: REST requests
- Kubernetes API → Kubernetes models: uses resources
- cert-manager API → Certificate models: uses resources
- Chaos Mesh API → Chaos models: uses resources
- Java application → Kubernetes models: handles results