The contract repository for the cocoonstack MicroVM platform. Every Kubernetes-side component — cocoon-operator, cocoon-webhook, vk-cocoon, cocoon-net — imports these packages instead of re-declaring the CRD types, the pod annotation keys, or the OCI snapshot wire format, so producer and consumer cannot drift.
apis/v1 CocoonSet + CocoonHibernation types, generated CRD YAML
meta annotation/label keys and the typed wrappers over them
k8s client bootstrap, patch helpers, TLS, admission scaffolding
snapshot VM snapshot push/pull over OCI (v1 and v2 wire formats)
oci the Registry interface + its standard-OCI implementation
manifest OCI manifest types, media types, artifact classification
ociutil reference parsing and size checks for digest-verified blob streams
cloudimg cloud-image disk streaming out of a registry
httpx, log HTTP server lifecycle and logger bootstrap
The dependency direction is one-way: cocoon-common depends on none of its
consumers, and its own packages form a DAG (oci → snapshot → manifest,
ociutil; cloudimg → manifest, ociutil; meta → apis/v1; k8s imports
nothing else in the module).
cocoonset.cocoonstack.io/v1 group, enum
defaults, the CEL rules that ship inside the CRDs, and the regeneration
workflowSource and issue tracker: github.com/cocoonstack/cocoon-common. Part of the cocoonstack MicroVM platform.