initial cut of the Content Library
Author: smiraCreated Sep 7, 2026Updated Sep 17, 2026
Labelsarea/machineconfigarea/cli
Configuration to provision content libraries:
apiVersion: v1alpha1
kind: ContentLibraryConfig
name: my-vm-images-1 # should be a safe name, let's do something like `^[A-z0-9](A-z0-9.-+)$`
backing:
volume: <volumeID>Expose content libraries as a resource, e.g. ContentLibraryStatus.
Provide a new set of APIs to manage content library contents:
List() # list files within the library
Upload() # upload an image
Delete() # delete an imageRBAC: new role os:content-library:reader, os:content-library:writer + os:operator, os:admin
We should have talosctl hv content-library list|upload|delete <library_id> [<filename>]
We need to have an integration test: API/CLI, we need a separate CI pipeline provisioning Talos cluster of only controlplanes, with --skip-etcd-k8s flag, with some Volumes defined, and a default ContentLibrary provisioned.
Source: siderolabs/talos