diff --git a/src/runtime/virtcontainers/pkg/oci/utils.go b/src/runtime/virtcontainers/pkg/oci/utils.go index 9eecd02b4..1240b9bb0 100644 --- a/src/runtime/virtcontainers/pkg/oci/utils.go +++ b/src/runtime/virtcontainers/pkg/oci/utils.go @@ -950,17 +950,22 @@ func ContainerConfig(ocispec specs.Spec, bundlePath, cid, console string, detach RootFs: rootfs, ReadonlyRootfs: ocispec.Root.Readonly, Cmd: cmd, - Annotations: map[string]string{ - vcAnnotations.BundlePathKey: bundlePath, - }, - Mounts: containerMounts(ocispec), - DeviceInfos: deviceInfos, - Resources: *ocispec.Linux.Resources, + Annotations: ocispec.Annotations, + Mounts: containerMounts(ocispec), + DeviceInfos: deviceInfos, + Resources: *ocispec.Linux.Resources, // This is a custom OCI spec modified at SetEphemeralStorageType() // to support ephemeral storage and k8s empty dir. CustomSpec: &ocispec, } + if containerConfig.Annotations == nil { + containerConfig.Annotations = map[string]string{ + vcAnnotations.BundlePathKey: bundlePath, + } + } else { + containerConfig.Annotations[vcAnnotations.BundlePathKey] = bundlePath + } cType, err := ContainerType(ocispec) if err != nil {