package storageversion
import "k8s.io/apiserver/pkg/storageversion"
Index ¶
- func SetCommonEncodingVersion(sv *v1alpha1.StorageVersion)
- type Client
- type Manager
- type ResourceInfo
Functions ¶
func SetCommonEncodingVersion ¶
func SetCommonEncodingVersion(sv *v1alpha1.StorageVersion)
SetCommonEncodingVersion updates the CommonEncodingVersion and the AllEncodingVersionsEqual condition based on the StorageVersions.
Types ¶
type Client ¶
type Client interface {
Create(context.Context, *v1alpha1.StorageVersion, metav1.CreateOptions) (*v1alpha1.StorageVersion, error)
UpdateStatus(context.Context, *v1alpha1.StorageVersion, metav1.UpdateOptions) (*v1alpha1.StorageVersion, error)
Get(context.Context, string, metav1.GetOptions) (*v1alpha1.StorageVersion, error)
}
Client has the methods required to update the storage version.
type Manager ¶
type Manager interface {
// AddResourceInfo records resources whose StorageVersions need updates
AddResourceInfo(resources ...*ResourceInfo)
// UpdateStorageVersions tries to update the StorageVersions of the recorded resources
UpdateStorageVersions(kubeAPIServerClientConfig *rest.Config, apiserverID string)
// PendingUpdate returns true if the StorageVersion of the given resource is still pending update.
PendingUpdate(gr schema.GroupResource) bool
// LastUpdateError returns the last error hit when updating the storage version of the given resource.
LastUpdateError(gr schema.GroupResource) error
// Completed returns true if updating StorageVersions of all recorded resources has completed.
Completed() bool
}
Manager records the resources whose StorageVersions need updates, and provides a method to update those StorageVersions.
func NewDefaultManager ¶
func NewDefaultManager() Manager
NewDefaultManager creates a new defaultManager.
type ResourceInfo ¶
type ResourceInfo struct {
GroupResource schema.GroupResource
EncodingVersion string
// Used to calculate decodable versions. Can only be used after all
// equivalent versions are registered by InstallREST.
EquivalentResourceMapper runtime.EquivalentResourceRegistry
// DirectlyDecodableVersions is a list of versions that the converter for REST storage knows how to convert. This
// contains items like apiextensions.k8s.io/v1beta1 even if we don't serve that version.
DirectlyDecodableVersions []schema.GroupVersion
// ServedVersions holds a list of all versions of GroupResource that are served. Note that a server may be able to
// decode a particular version, but still not serve it.
ServedVersions []string
}
ResourceInfo contains the information to register the resource to the storage version API.
Source Files ¶
manager.go updater.go
- Version
- v0.36.0 (latest)
- Published
- Apr 22, 2026
- Platform
- linux/amd64
- Imports
- 16 packages
- Last checked
- 4 days ago –
Tools for package owners.