rebase: update the kube dependencies to v1.25.4

this commit update the kube dependencies to latest v1.25.4.

Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
This commit is contained in:
Humble Chirammal
2022-11-23 14:29:52 +05:30
committed by mergify[bot]
parent 1ac0a17f5c
commit 165758e3a7
8 changed files with 140 additions and 108 deletions

View File

@ -27,9 +27,12 @@ func (m *MicroTime) ProtoMicroTime() *Timestamp {
if m == nil {
return &Timestamp{}
}
// truncate precision to microseconds to match JSON marshaling/unmarshaling
truncatedNanoseconds := time.Duration(m.Time.Nanosecond()).Truncate(time.Microsecond)
return &Timestamp{
Seconds: m.Time.Unix(),
Nanos: int32(m.Time.Nanosecond()),
Nanos: int32(truncatedNanoseconds),
}
}
@ -51,7 +54,10 @@ func (m *MicroTime) Unmarshal(data []byte) error {
if err := p.Unmarshal(data); err != nil {
return err
}
m.Time = time.Unix(p.Seconds, int64(p.Nanos)).Local()
// truncate precision to microseconds to match JSON marshaling/unmarshaling
truncatedNanoseconds := time.Duration(p.Nanos).Truncate(time.Microsecond)
m.Time = time.Unix(p.Seconds, int64(truncatedNanoseconds)).Local()
return nil
}

View File

@ -1127,9 +1127,14 @@ func RemoveTaintOffNode(ctx context.Context, c clientset.Interface, nodeName str
// PatchNodeTaints patches node's taints.
func PatchNodeTaints(ctx context.Context, c clientset.Interface, nodeName string, oldNode *v1.Node, newNode *v1.Node) error {
oldData, err := json.Marshal(oldNode)
// Strip base diff node from RV to ensure that our Patch request will set RV to check for conflicts over .spec.taints.
// This is needed because .spec.taints does not specify patchMergeKey and patchStrategy and adding them is no longer an option for compatibility reasons.
// Using other Patch strategy works for adding new taints, however will not resolve problem with taint removal.
oldNodeNoRV := oldNode.DeepCopy()
oldNodeNoRV.ResourceVersion = ""
oldDataNoRV, err := json.Marshal(&oldNodeNoRV)
if err != nil {
return fmt.Errorf("failed to marshal old node %#v for node %q: %v", oldNode, nodeName, err)
return fmt.Errorf("failed to marshal old node %#v for node %q: %v", oldNodeNoRV, nodeName, err)
}
newTaints := newNode.Spec.Taints
@ -1140,7 +1145,7 @@ func PatchNodeTaints(ctx context.Context, c clientset.Interface, nodeName string
return fmt.Errorf("failed to marshal new node %#v for node %q: %v", newNodeClone, nodeName, err)
}
patchBytes, err := strategicpatch.CreateTwoWayMergePatch(oldData, newData, v1.Node{})
patchBytes, err := strategicpatch.CreateTwoWayMergePatch(oldDataNoRV, newData, v1.Node{})
if err != nil {
return fmt.Errorf("failed to create patch for node %q: %v", nodeName, err)
}

View File

@ -75,6 +75,9 @@ const (
// VolumeDynamicallyCreatedByKey is the key of the annotation on PersistentVolume
// object created dynamically
VolumeDynamicallyCreatedByKey = "kubernetes.io/createdby"
// kubernetesPluginPathPrefix is the prefix of kubernetes plugin mount paths.
kubernetesPluginPathPrefix = "/plugins/kubernetes.io/"
)
// IsReady checks for the existence of a regular file
@ -635,12 +638,30 @@ func FsUserFrom(pod *v1.Pod) *int64 {
// In GCI cluster, if gci mounter is used for mounting, the container started by mounter
// script will cause additional mounts created in the container. Since these mounts are
// irrelevant to the original mounts, they should be not considered when checking the
// mount references. Current solution is to filter out those mount paths that contain
// the string of original mount path.
// Plan to work on better approach to solve this issue.
// mount references. The current solution is to filter out those mount paths that contain
// the k8s plugin suffix of original mount path.
func HasMountRefs(mountPath string, mountRefs []string) bool {
// A mountPath typically is like
// /var/lib/kubelet/plugins/kubernetes.io/some-plugin/mounts/volume-XXXX
// Mount refs can look like
// /home/somewhere/var/lib/kubelet/plugins/kubernetes.io/some-plugin/...
// but if /var/lib/kubelet is mounted to a different device a ref might be like
// /mnt/some-other-place/kubelet/plugins/kubernetes.io/some-plugin/...
// Neither of the above should be counted as a mount ref as those are handled
// by the kubelet. What we're concerned about is a path like
// /data/local/some/manual/mount
// As unmonting could interrupt usage from that mountpoint.
//
// So instead of looking for the entire /var/lib/... path, the plugins/kuberentes.io/
// suffix is trimmed off and searched for.
//
// If there isn't a /plugins/... path, the whole mountPath is used instead.
pathToFind := mountPath
if i := strings.Index(mountPath, kubernetesPluginPathPrefix); i > -1 {
pathToFind = mountPath[i:]
}
for _, ref := range mountRefs {
if !strings.Contains(ref, mountPath) {
if !strings.Contains(ref, pathToFind) {
return true
}
}

View File

@ -34,7 +34,7 @@ import (
e2essh "k8s.io/kubernetes/test/e2e/framework/ssh"
)
const etcdImage = "3.5.4-0"
const etcdImage = "3.5.5-0"
// EtcdUpgrade upgrades etcd on GCE.
func EtcdUpgrade(targetStorage, targetVersion string) error {

View File

@ -241,7 +241,7 @@ func initImageConfigs(list RegistryList) (map[ImageID]Config, map[ImageID]Config
configs[CudaVectorAdd] = Config{list.PromoterE2eRegistry, "cuda-vector-add", "1.0"}
configs[CudaVectorAdd2] = Config{list.PromoterE2eRegistry, "cuda-vector-add", "2.2"}
configs[DistrolessIptables] = Config{list.BuildImageRegistry, "distroless-iptables", "v0.1.1"}
configs[Etcd] = Config{list.GcEtcdRegistry, "etcd", "3.5.4-0"}
configs[Etcd] = Config{list.GcEtcdRegistry, "etcd", "3.5.5-0"}
configs[GlusterDynamicProvisioner] = Config{list.PromoterE2eRegistry, "glusterdynamic-provisioner", "v1.3"}
configs[Httpd] = Config{list.PromoterE2eRegistry, "httpd", "2.4.38-2"}
configs[HttpdNew] = Config{list.PromoterE2eRegistry, "httpd", "2.4.39-2"}

76
vendor/modules.txt vendored
View File

@ -800,7 +800,7 @@ gopkg.in/yaml.v2
# gopkg.in/yaml.v3 v3.0.1
## explicit
gopkg.in/yaml.v3
# k8s.io/api v0.25.4 => k8s.io/api v0.25.3
# k8s.io/api v0.25.4 => k8s.io/api v0.25.4
## explicit; go 1.19
k8s.io/api/admission/v1
k8s.io/api/admission/v1beta1
@ -850,11 +850,11 @@ k8s.io/api/scheduling/v1beta1
k8s.io/api/storage/v1
k8s.io/api/storage/v1alpha1
k8s.io/api/storage/v1beta1
# k8s.io/apiextensions-apiserver v0.25.3 => k8s.io/apiextensions-apiserver v0.25.3
# k8s.io/apiextensions-apiserver v0.25.4 => k8s.io/apiextensions-apiserver v0.25.4
## explicit; go 1.19
k8s.io/apiextensions-apiserver/pkg/apis/apiextensions
k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1
# k8s.io/apimachinery v0.25.4 => k8s.io/apimachinery v0.25.3
# k8s.io/apimachinery v0.25.4 => k8s.io/apimachinery v0.25.4
## explicit; go 1.19
k8s.io/apimachinery/pkg/api/equality
k8s.io/apimachinery/pkg/api/errors
@ -910,7 +910,7 @@ k8s.io/apimachinery/pkg/watch
k8s.io/apimachinery/third_party/forked/golang/json
k8s.io/apimachinery/third_party/forked/golang/netutil
k8s.io/apimachinery/third_party/forked/golang/reflect
# k8s.io/apiserver v0.25.3 => k8s.io/apiserver v0.25.3
# k8s.io/apiserver v0.25.4 => k8s.io/apiserver v0.25.4
## explicit; go 1.19
k8s.io/apiserver/pkg/admission
k8s.io/apiserver/pkg/admission/configuration
@ -948,7 +948,7 @@ k8s.io/apiserver/pkg/util/feature
k8s.io/apiserver/pkg/util/webhook
k8s.io/apiserver/pkg/util/x509metrics
k8s.io/apiserver/pkg/warning
# k8s.io/client-go v12.0.0+incompatible => k8s.io/client-go v0.25.3
# k8s.io/client-go v12.0.0+incompatible => k8s.io/client-go v0.25.4
## explicit; go 1.19
k8s.io/client-go/applyconfigurations/admissionregistration/v1
k8s.io/client-go/applyconfigurations/admissionregistration/v1beta1
@ -1196,12 +1196,12 @@ k8s.io/client-go/util/homedir
k8s.io/client-go/util/keyutil
k8s.io/client-go/util/retry
k8s.io/client-go/util/workqueue
# k8s.io/cloud-provider v0.25.3 => k8s.io/cloud-provider v0.25.3
# k8s.io/cloud-provider v0.25.4 => k8s.io/cloud-provider v0.25.4
## explicit; go 1.19
k8s.io/cloud-provider
k8s.io/cloud-provider/volume
k8s.io/cloud-provider/volume/helpers
# k8s.io/component-base v0.25.3 => k8s.io/component-base v0.25.3
# k8s.io/component-base v0.25.4 => k8s.io/component-base v0.25.4
## explicit; go 1.19
k8s.io/component-base/cli/flag
k8s.io/component-base/config
@ -1215,7 +1215,7 @@ k8s.io/component-base/metrics/testutil
k8s.io/component-base/tracing
k8s.io/component-base/tracing/api/v1
k8s.io/component-base/version
# k8s.io/component-helpers v0.25.3 => k8s.io/component-helpers v0.25.3
# k8s.io/component-helpers v0.25.4 => k8s.io/component-helpers v0.25.4
## explicit; go 1.19
k8s.io/component-helpers/node/util/sysctl
k8s.io/component-helpers/scheduling/corev1
@ -1241,14 +1241,14 @@ k8s.io/kube-openapi/pkg/schemamutation
k8s.io/kube-openapi/pkg/spec3
k8s.io/kube-openapi/pkg/util/proto
k8s.io/kube-openapi/pkg/validation/spec
# k8s.io/kubectl v0.0.0 => k8s.io/kubectl v0.25.3
# k8s.io/kubectl v0.0.0 => k8s.io/kubectl v0.25.4
## explicit; go 1.19
k8s.io/kubectl/pkg/scale
k8s.io/kubectl/pkg/util/podutils
# k8s.io/kubelet v0.0.0 => k8s.io/kubelet v0.25.3
# k8s.io/kubelet v0.0.0 => k8s.io/kubelet v0.25.4
## explicit; go 1.19
k8s.io/kubelet/pkg/apis/stats/v1alpha1
# k8s.io/kubernetes v1.25.3
# k8s.io/kubernetes v1.25.4
## explicit; go 1.19
k8s.io/kubernetes/pkg/api/legacyscheme
k8s.io/kubernetes/pkg/api/service
@ -1311,10 +1311,10 @@ k8s.io/kubernetes/test/e2e/storage/utils
k8s.io/kubernetes/test/e2e/testing-manifests
k8s.io/kubernetes/test/utils
k8s.io/kubernetes/test/utils/image
# k8s.io/mount-utils v0.25.3 => k8s.io/mount-utils v0.25.3
# k8s.io/mount-utils v0.25.4 => k8s.io/mount-utils v0.25.4
## explicit; go 1.19
k8s.io/mount-utils
# k8s.io/pod-security-admission v0.0.0 => k8s.io/pod-security-admission v0.25.3
# k8s.io/pod-security-admission v0.0.0 => k8s.io/pod-security-admission v0.25.4
## explicit; go 1.19
k8s.io/pod-security-admission/api
k8s.io/pod-security-admission/policy
@ -1395,29 +1395,29 @@ sigs.k8s.io/yaml
# github.com/ceph/ceph-csi/api => ./api
# github.com/portworx/sched-ops => github.com/portworx/sched-ops v0.20.4-openstorage-rc3
# gomodules.xyz/jsonpatch/v2 => github.com/gomodules/jsonpatch/v2 v2.2.0
# k8s.io/api => k8s.io/api v0.25.3
# k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.25.3
# k8s.io/apimachinery => k8s.io/apimachinery v0.25.3
# k8s.io/apiserver => k8s.io/apiserver v0.25.3
# k8s.io/cli-runtime => k8s.io/cli-runtime v0.25.3
# k8s.io/client-go => k8s.io/client-go v0.25.3
# k8s.io/cloud-provider => k8s.io/cloud-provider v0.25.3
# k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.25.3
# k8s.io/code-generator => k8s.io/code-generator v0.25.3
# k8s.io/component-base => k8s.io/component-base v0.25.3
# k8s.io/component-helpers => k8s.io/component-helpers v0.25.3
# k8s.io/controller-manager => k8s.io/controller-manager v0.25.3
# k8s.io/cri-api => k8s.io/cri-api v0.25.3
# k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.25.3
# k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.25.3
# k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.25.3
# k8s.io/kube-proxy => k8s.io/kube-proxy v0.25.3
# k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.25.3
# k8s.io/kubectl => k8s.io/kubectl v0.25.3
# k8s.io/kubelet => k8s.io/kubelet v0.25.3
# k8s.io/legacy-cloud-providers => k8s.io/legacy-cloud-providers v0.25.3
# k8s.io/metrics => k8s.io/metrics v0.25.3
# k8s.io/mount-utils => k8s.io/mount-utils v0.25.3
# k8s.io/pod-security-admission => k8s.io/pod-security-admission v0.25.3
# k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.25.3
# k8s.io/api => k8s.io/api v0.25.4
# k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.25.4
# k8s.io/apimachinery => k8s.io/apimachinery v0.25.4
# k8s.io/apiserver => k8s.io/apiserver v0.25.4
# k8s.io/cli-runtime => k8s.io/cli-runtime v0.25.4
# k8s.io/client-go => k8s.io/client-go v0.25.4
# k8s.io/cloud-provider => k8s.io/cloud-provider v0.25.4
# k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.25.4
# k8s.io/code-generator => k8s.io/code-generator v0.25.4
# k8s.io/component-base => k8s.io/component-base v0.25.4
# k8s.io/component-helpers => k8s.io/component-helpers v0.25.4
# k8s.io/controller-manager => k8s.io/controller-manager v0.25.4
# k8s.io/cri-api => k8s.io/cri-api v0.25.4
# k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.25.4
# k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.25.4
# k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.25.4
# k8s.io/kube-proxy => k8s.io/kube-proxy v0.25.4
# k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.25.4
# k8s.io/kubectl => k8s.io/kubectl v0.25.4
# k8s.io/kubelet => k8s.io/kubelet v0.25.4
# k8s.io/legacy-cloud-providers => k8s.io/legacy-cloud-providers v0.25.4
# k8s.io/metrics => k8s.io/metrics v0.25.4
# k8s.io/mount-utils => k8s.io/mount-utils v0.25.4
# k8s.io/pod-security-admission => k8s.io/pod-security-admission v0.25.4
# k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.25.4
# layeh.com/radius => github.com/layeh/radius v0.0.0-20190322222518-890bc1058917