mirror of
https://github.com/k3s-io/kubernetes.git
synced 2026-07-17 20:00:07 +00:00
refactor: expose imageSpec conversion functions
Signed-off-by: Itamar Holder <iholder@redhat.com>
This commit is contained in:
@@ -27,7 +27,7 @@ import (
|
||||
|
||||
// This file contains help function to kuberuntime types to CRI runtime API types, or vice versa.
|
||||
|
||||
func toKubeContainerImageSpec(image *runtimeapi.Image) kubecontainer.ImageSpec {
|
||||
func ToKubeContainerImageSpec(image *runtimeapi.Image) kubecontainer.ImageSpec {
|
||||
var annotations []kubecontainer.Annotation
|
||||
|
||||
if image.Spec != nil && len(image.Spec.Annotations) > 0 {
|
||||
@@ -60,7 +60,7 @@ func toKubeContainerImageSpec(image *runtimeapi.Image) kubecontainer.ImageSpec {
|
||||
return spec
|
||||
}
|
||||
|
||||
func toRuntimeAPIImageSpec(imageSpec kubecontainer.ImageSpec) *runtimeapi.ImageSpec {
|
||||
func ToRuntimeAPIImageSpec(imageSpec kubecontainer.ImageSpec) *runtimeapi.ImageSpec {
|
||||
var annotations = make(map[string]string)
|
||||
if imageSpec.Annotations != nil {
|
||||
for _, a := range imageSpec.Annotations {
|
||||
|
||||
@@ -94,7 +94,7 @@ func TestConvertToKubeContainerImageSpec(t *testing.T) {
|
||||
}
|
||||
|
||||
for _, test := range testCases {
|
||||
actual := toKubeContainerImageSpec(test.input)
|
||||
actual := ToKubeContainerImageSpec(test.input)
|
||||
assert.Equal(t, test.expected, actual)
|
||||
}
|
||||
}
|
||||
@@ -155,7 +155,7 @@ func TestConvertToRuntimeAPIImageSpec(t *testing.T) {
|
||||
}
|
||||
|
||||
for _, test := range testCases {
|
||||
actual := toRuntimeAPIImageSpec(test.input)
|
||||
actual := ToRuntimeAPIImageSpec(test.input)
|
||||
assert.Equal(t, test.expected, actual)
|
||||
}
|
||||
}
|
||||
@@ -232,7 +232,7 @@ func TestConvertToKubeContainerImageSpecWithRuntimeHandlerInImageSpecCri(t *test
|
||||
|
||||
for _, test := range testCases {
|
||||
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.RuntimeClassInImageCriAPI, true)
|
||||
actual := toKubeContainerImageSpec(test.input)
|
||||
actual := ToKubeContainerImageSpec(test.input)
|
||||
assert.Equal(t, test.expected, actual)
|
||||
}
|
||||
}
|
||||
@@ -294,7 +294,7 @@ func TestConvertToRuntimeAPIImageSpecWithRuntimeHandlerInImageSpecCri(t *testing
|
||||
|
||||
for _, test := range testCases {
|
||||
featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.RuntimeClassInImageCriAPI, true)
|
||||
actual := toRuntimeAPIImageSpec(test.input)
|
||||
actual := ToRuntimeAPIImageSpec(test.input)
|
||||
assert.Equal(t, test.expected, actual)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ import (
|
||||
func (m *kubeGenericRuntimeManager) PullImage(ctx context.Context, image kubecontainer.ImageSpec, credentials []crededentialprovider.TrackedAuthConfig, podSandboxConfig *runtimeapi.PodSandboxConfig) (string, *crededentialprovider.TrackedAuthConfig, error) {
|
||||
logger := klog.FromContext(ctx)
|
||||
img := image.Image
|
||||
imgSpec := toRuntimeAPIImageSpec(image)
|
||||
imgSpec := ToRuntimeAPIImageSpec(image)
|
||||
|
||||
if len(credentials) == 0 {
|
||||
logger.V(3).Info("Pulling image without credentials", "image", img)
|
||||
@@ -74,7 +74,7 @@ func (m *kubeGenericRuntimeManager) PullImage(ctx context.Context, image kubecon
|
||||
// the local storage. It returns ("", nil) if the image isn't in the local storage.
|
||||
func (m *kubeGenericRuntimeManager) GetImageRef(ctx context.Context, image kubecontainer.ImageSpec) (string, error) {
|
||||
logger := klog.FromContext(ctx)
|
||||
resp, err := m.imageService.ImageStatus(ctx, toRuntimeAPIImageSpec(image), false)
|
||||
resp, err := m.imageService.ImageStatus(ctx, ToRuntimeAPIImageSpec(image), false)
|
||||
if err != nil {
|
||||
logger.Error(err, "Failed to get image status", "image", image.Image)
|
||||
return "", err
|
||||
@@ -87,7 +87,7 @@ func (m *kubeGenericRuntimeManager) GetImageRef(ctx context.Context, image kubec
|
||||
|
||||
func (m *kubeGenericRuntimeManager) GetImageSize(ctx context.Context, image kubecontainer.ImageSpec) (uint64, error) {
|
||||
logger := klog.FromContext(ctx)
|
||||
resp, err := m.imageService.ImageStatus(ctx, toRuntimeAPIImageSpec(image), false)
|
||||
resp, err := m.imageService.ImageStatus(ctx, ToRuntimeAPIImageSpec(image), false)
|
||||
if err != nil {
|
||||
logger.Error(err, "Failed to get image status", "image", image.Image)
|
||||
return 0, err
|
||||
@@ -126,7 +126,7 @@ func (m *kubeGenericRuntimeManager) ListImages(ctx context.Context) ([]kubeconta
|
||||
Size: int64(img.Size),
|
||||
RepoTags: img.RepoTags,
|
||||
RepoDigests: img.RepoDigests,
|
||||
Spec: toKubeContainerImageSpec(img),
|
||||
Spec: ToKubeContainerImageSpec(img),
|
||||
Pinned: img.Pinned,
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user