rebase: bump the k8s-dependencies group with 2 updates

Bumps the k8s-dependencies group with 2 updates: [k8s.io/kubernetes](https://github.com/kubernetes/kubernetes) and [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime).

Updates `k8s.io/kubernetes` from 1.29.1 to 1.29.2
- [Release notes](https://github.com/kubernetes/kubernetes/releases)
- [Commits](https://github.com/kubernetes/kubernetes/compare/v1.29.1...v1.29.2)

Updates `sigs.k8s.io/controller-runtime` from 0.17.1 to 0.17.2
- [Release notes](https://github.com/kubernetes-sigs/controller-runtime/releases)
- [Changelog](https://github.com/kubernetes-sigs/controller-runtime/blob/main/RELEASE.md)
- [Commits](https://github.com/kubernetes-sigs/controller-runtime/compare/v0.17.1...v0.17.2)

---
updated-dependencies:
- dependency-name: k8s.io/kubernetes
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-dependencies
- dependency-name: sigs.k8s.io/controller-runtime
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: k8s-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
This commit is contained in:
dependabot[bot]
2024-02-19 20:58:29 +00:00
committed by mergify[bot]
parent 3749b5c470
commit dcae46be26
14 changed files with 165 additions and 128 deletions

View File

@ -3286,7 +3286,7 @@ message PersistentVolumeStatus {
// lastPhaseTransitionTime is the time the phase transitioned from one to another
// and automatically resets to current time everytime a volume phase transitions.
// This is an alpha field and requires enabling PersistentVolumeLastPhaseTransitionTime feature.
// This is a beta field and requires the PersistentVolumeLastPhaseTransitionTime feature to be enabled (enabled by default).
// +featureGate=PersistentVolumeLastPhaseTransitionTime
// +optional
optional k8s.io.apimachinery.pkg.apis.meta.v1.Time lastPhaseTransitionTime = 4;

2
vendor/k8s.io/api/core/v1/types.go generated vendored
View File

@ -423,7 +423,7 @@ type PersistentVolumeStatus struct {
Reason string `json:"reason,omitempty" protobuf:"bytes,3,opt,name=reason"`
// lastPhaseTransitionTime is the time the phase transitioned from one to another
// and automatically resets to current time everytime a volume phase transitions.
// This is an alpha field and requires enabling PersistentVolumeLastPhaseTransitionTime feature.
// This is a beta field and requires the PersistentVolumeLastPhaseTransitionTime feature to be enabled (enabled by default).
// +featureGate=PersistentVolumeLastPhaseTransitionTime
// +optional
LastPhaseTransitionTime *metav1.Time `json:"lastPhaseTransitionTime,omitempty" protobuf:"bytes,4,opt,name=lastPhaseTransitionTime"`

View File

@ -1478,7 +1478,7 @@ var map_PersistentVolumeStatus = map[string]string{
"phase": "phase indicates if a volume is available, bound to a claim, or released by a claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#phase",
"message": "message is a human-readable message indicating details about why the volume is in this state.",
"reason": "reason is a brief CamelCase string that describes any failure and is meant for machine parsing and tidy display in the CLI.",
"lastPhaseTransitionTime": "lastPhaseTransitionTime is the time the phase transitioned from one to another and automatically resets to current time everytime a volume phase transitions. This is an alpha field and requires enabling PersistentVolumeLastPhaseTransitionTime feature.",
"lastPhaseTransitionTime": "lastPhaseTransitionTime is the time the phase transitioned from one to another and automatically resets to current time everytime a volume phase transitions. This is a beta field and requires the PersistentVolumeLastPhaseTransitionTime feature to be enabled (enabled by default).",
}
func (PersistentVolumeStatus) SwaggerDoc() map[string]string {

View File

@ -180,8 +180,9 @@ func (c *policyController) reconcilePolicyDefinitionSpec(namespace, name string,
celmetrics.Metrics.ObserveDefinition(context.TODO(), "active", "deny")
}
// Skip reconcile if the spec of the definition is unchanged
if info.lastReconciledValue != nil && definition != nil &&
// Skip reconcile if the spec of the definition is unchanged and had a
// successful previous sync
if info.configurationError == nil && info.lastReconciledValue != nil && definition != nil &&
apiequality.Semantic.DeepEqual(info.lastReconciledValue.Spec, definition.Spec) {
return nil
}

View File

@ -57,6 +57,7 @@ var (
func Register(registry k8smetrics.KubeRegistry) {
registry.Register(healthcheck)
registry.Register(healthchecksTotal)
_ = k8smetrics.RegisterProcessStartTime(registry.Register)
}
func ResetHealthMetrics() {

View File

@ -24,6 +24,20 @@ import (
"k8s.io/component-helpers/scheduling/corev1"
)
// PersistentVolumeClaimHasClass returns true if given claim has set StorageClassName field.
func PersistentVolumeClaimHasClass(claim *v1.PersistentVolumeClaim) bool {
// Use beta annotation first
if _, found := claim.Annotations[v1.BetaStorageClassAnnotation]; found {
return true
}
if claim.Spec.StorageClassName != nil {
return true
}
return false
}
// GetPersistentVolumeClaimClass returns StorageClassName. If no storage class was
// requested, it returns "".
func GetPersistentVolumeClaimClass(claim *v1.PersistentVolumeClaim) string {

View File

@ -392,7 +392,7 @@ type PersistentVolumeStatus struct {
Reason string
// LastPhaseTransitionTime is the time the phase transitioned from one to another
// and automatically resets to current time everytime a volume phase transitions.
// This is an alpha field and requires enabling PersistentVolumeLastPhaseTransitionTime feature.
// This is a beta field and requires the PersistentVolumeLastPhaseTransitionTime feature to be enabled (enabled by default).
// +featureGate=PersistentVolumeLastPhaseTransitionTime
// +optional
LastPhaseTransitionTime *metav1.Time

View File

@ -616,6 +616,7 @@ const (
// owner: @RomanBednar
// kep: https://kep.k8s.io/3762
// alpha: v1.28
// beta: v1.29
//
// Adds a new field to persistent volumes which holds a timestamp of when the volume last transitioned its phase.
PersistentVolumeLastPhaseTransitionTime featuregate.Feature = "PersistentVolumeLastPhaseTransitionTime"

View File

@ -1064,7 +1064,7 @@ func NewPersistentVolumeRecyclerPodTemplate() *v1.Pod {
Containers: []v1.Container{
{
Name: "pv-recycler",
Image: "registry.k8s.io/build-image/debian-base:bookworm-v1.0.0",
Image: "registry.k8s.io/build-image/debian-base:bookworm-v1.0.1",
Command: []string{"/bin/sh"},
Args: []string{"-c", "test -e /scrub && find /scrub -mindepth 1 -delete && test -z \"$(ls -A /scrub)\" || exit 1"},
VolumeMounts: []v1.VolumeMount{

View File

@ -241,7 +241,7 @@ func initImageConfigs(list RegistryList) (map[ImageID]Config, map[ImageID]Config
configs[BusyBox] = Config{list.PromoterE2eRegistry, "busybox", "1.36.1-1"}
configs[CudaVectorAdd] = Config{list.PromoterE2eRegistry, "cuda-vector-add", "1.0"}
configs[CudaVectorAdd2] = Config{list.PromoterE2eRegistry, "cuda-vector-add", "2.3"}
configs[DistrolessIptables] = Config{list.BuildImageRegistry, "distroless-iptables", "v0.4.4"}
configs[DistrolessIptables] = Config{list.BuildImageRegistry, "distroless-iptables", "v0.4.5"}
configs[Etcd] = Config{list.GcEtcdRegistry, "etcd", "3.5.10-0"}
configs[Httpd] = Config{list.PromoterE2eRegistry, "httpd", "2.4.38-4"}
configs[HttpdNew] = Config{list.PromoterE2eRegistry, "httpd", "2.4.39-4"}

86
vendor/modules.txt vendored
View File

@ -864,7 +864,7 @@ gopkg.in/yaml.v2
# gopkg.in/yaml.v3 v3.0.1
## explicit
gopkg.in/yaml.v3
# k8s.io/api v0.29.1 => k8s.io/api v0.29.1
# k8s.io/api v0.29.2 => k8s.io/api v0.29.2
## explicit; go 1.21
k8s.io/api/admission/v1
k8s.io/api/admission/v1beta1
@ -920,12 +920,12 @@ 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.29.0 => k8s.io/apiextensions-apiserver v0.29.1
# k8s.io/apiextensions-apiserver v0.29.0 => k8s.io/apiextensions-apiserver v0.29.2
## explicit; go 1.21
k8s.io/apiextensions-apiserver/pkg/apis/apiextensions
k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1
k8s.io/apiextensions-apiserver/pkg/features
# k8s.io/apimachinery v0.29.1 => k8s.io/apimachinery v0.29.1
# k8s.io/apimachinery v0.29.2 => k8s.io/apimachinery v0.29.2
## explicit; go 1.21
k8s.io/apimachinery/pkg/api/equality
k8s.io/apimachinery/pkg/api/errors
@ -988,7 +988,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.29.1 => k8s.io/apiserver v0.29.1
# k8s.io/apiserver v0.29.2 => k8s.io/apiserver v0.29.2
## explicit; go 1.21
k8s.io/apiserver/pkg/admission
k8s.io/apiserver/pkg/admission/cel
@ -1136,7 +1136,7 @@ k8s.io/apiserver/plugin/pkg/audit/truncate
k8s.io/apiserver/plugin/pkg/audit/webhook
k8s.io/apiserver/plugin/pkg/authenticator/token/webhook
k8s.io/apiserver/plugin/pkg/authorizer/webhook
# k8s.io/client-go v12.0.0+incompatible => k8s.io/client-go v0.29.1
# k8s.io/client-go v12.0.0+incompatible => k8s.io/client-go v0.29.2
## explicit; go 1.21
k8s.io/client-go/applyconfigurations/admissionregistration/v1
k8s.io/client-go/applyconfigurations/admissionregistration/v1alpha1
@ -1407,7 +1407,7 @@ 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.29.1 => k8s.io/cloud-provider v0.29.1
# k8s.io/cloud-provider v0.29.2 => k8s.io/cloud-provider v0.29.2
## explicit; go 1.21
k8s.io/cloud-provider
k8s.io/cloud-provider/app/config
@ -1422,7 +1422,7 @@ k8s.io/cloud-provider/names
k8s.io/cloud-provider/options
k8s.io/cloud-provider/volume
k8s.io/cloud-provider/volume/helpers
# k8s.io/component-base v0.29.1 => k8s.io/component-base v0.29.1
# k8s.io/component-base v0.29.2 => k8s.io/component-base v0.29.2
## explicit; go 1.21
k8s.io/component-base/cli/flag
k8s.io/component-base/config
@ -1444,13 +1444,13 @@ 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.29.1 => k8s.io/component-helpers v0.29.1
# k8s.io/component-helpers v0.29.2 => k8s.io/component-helpers v0.29.2
## explicit; go 1.21
k8s.io/component-helpers/node/util/sysctl
k8s.io/component-helpers/scheduling/corev1
k8s.io/component-helpers/scheduling/corev1/nodeaffinity
k8s.io/component-helpers/storage/volume
# k8s.io/controller-manager v0.29.1 => k8s.io/controller-manager v0.29.1
# k8s.io/controller-manager v0.29.2 => k8s.io/controller-manager v0.29.2
## explicit; go 1.21
k8s.io/controller-manager/config
k8s.io/controller-manager/config/v1
@ -1471,7 +1471,7 @@ k8s.io/klog/v2/internal/dbg
k8s.io/klog/v2/internal/serialize
k8s.io/klog/v2/internal/severity
k8s.io/klog/v2/internal/sloghandler
# k8s.io/kms v0.29.1
# k8s.io/kms v0.29.2
## explicit; go 1.21
k8s.io/kms/apis/v1beta1
k8s.io/kms/apis/v2
@ -1498,15 +1498,15 @@ k8s.io/kube-openapi/pkg/validation/errors
k8s.io/kube-openapi/pkg/validation/spec
k8s.io/kube-openapi/pkg/validation/strfmt
k8s.io/kube-openapi/pkg/validation/strfmt/bson
# k8s.io/kubectl v0.0.0 => k8s.io/kubectl v0.29.1
# k8s.io/kubectl v0.0.0 => k8s.io/kubectl v0.29.2
## explicit; go 1.21
k8s.io/kubectl/pkg/scale
k8s.io/kubectl/pkg/util/podutils
# k8s.io/kubelet v0.0.0 => k8s.io/kubelet v0.29.1
# k8s.io/kubelet v0.0.0 => k8s.io/kubelet v0.29.2
## explicit; go 1.21
k8s.io/kubelet/pkg/apis
k8s.io/kubelet/pkg/apis/stats/v1alpha1
# k8s.io/kubernetes v1.29.1
# k8s.io/kubernetes v1.29.2
## explicit; go 1.21
k8s.io/kubernetes/pkg/api/legacyscheme
k8s.io/kubernetes/pkg/api/service
@ -1571,10 +1571,10 @@ k8s.io/kubernetes/test/utils
k8s.io/kubernetes/test/utils/format
k8s.io/kubernetes/test/utils/image
k8s.io/kubernetes/test/utils/kubeconfig
# k8s.io/mount-utils v0.29.1 => k8s.io/mount-utils v0.29.1
# k8s.io/mount-utils v0.29.2 => k8s.io/mount-utils v0.29.2
## explicit; go 1.21
k8s.io/mount-utils
# k8s.io/pod-security-admission v0.0.0 => k8s.io/pod-security-admission v0.29.1
# k8s.io/pod-security-admission v0.0.0 => k8s.io/pod-security-admission v0.29.2
## explicit; go 1.21
k8s.io/pod-security-admission/api
k8s.io/pod-security-admission/policy
@ -1604,7 +1604,7 @@ sigs.k8s.io/apiserver-network-proxy/konnectivity-client/pkg/client
sigs.k8s.io/apiserver-network-proxy/konnectivity-client/pkg/client/metrics
sigs.k8s.io/apiserver-network-proxy/konnectivity-client/pkg/common/metrics
sigs.k8s.io/apiserver-network-proxy/konnectivity-client/proto/client
# sigs.k8s.io/controller-runtime v0.17.1
# sigs.k8s.io/controller-runtime v0.17.2
## explicit; go 1.21
sigs.k8s.io/controller-runtime/pkg/cache
sigs.k8s.io/controller-runtime/pkg/cache/internal
@ -1662,31 +1662,31 @@ sigs.k8s.io/yaml/goyaml.v2
# 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.29.1
# k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.29.1
# k8s.io/apimachinery => k8s.io/apimachinery v0.29.1
# k8s.io/apiserver => k8s.io/apiserver v0.29.1
# k8s.io/cli-runtime => k8s.io/cli-runtime v0.29.1
# k8s.io/client-go => k8s.io/client-go v0.29.1
# k8s.io/cloud-provider => k8s.io/cloud-provider v0.29.1
# k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.29.1
# k8s.io/code-generator => k8s.io/code-generator v0.29.1
# k8s.io/component-base => k8s.io/component-base v0.29.1
# k8s.io/component-helpers => k8s.io/component-helpers v0.29.1
# k8s.io/controller-manager => k8s.io/controller-manager v0.29.1
# k8s.io/cri-api => k8s.io/cri-api v0.29.1
# k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.29.1
# k8s.io/dynamic-resource-allocation => k8s.io/dynamic-resource-allocation v0.29.1
# k8s.io/endpointslice => k8s.io/endpointslice v0.29.1
# k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.29.1
# k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.29.1
# k8s.io/kube-proxy => k8s.io/kube-proxy v0.29.1
# k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.29.1
# k8s.io/kubectl => k8s.io/kubectl v0.29.1
# k8s.io/kubelet => k8s.io/kubelet v0.29.1
# k8s.io/legacy-cloud-providers => k8s.io/legacy-cloud-providers v0.29.1
# k8s.io/metrics => k8s.io/metrics v0.29.1
# k8s.io/mount-utils => k8s.io/mount-utils v0.29.1
# k8s.io/pod-security-admission => k8s.io/pod-security-admission v0.29.1
# k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.29.1
# k8s.io/api => k8s.io/api v0.29.2
# k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.29.2
# k8s.io/apimachinery => k8s.io/apimachinery v0.29.2
# k8s.io/apiserver => k8s.io/apiserver v0.29.2
# k8s.io/cli-runtime => k8s.io/cli-runtime v0.29.2
# k8s.io/client-go => k8s.io/client-go v0.29.2
# k8s.io/cloud-provider => k8s.io/cloud-provider v0.29.2
# k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.29.2
# k8s.io/code-generator => k8s.io/code-generator v0.29.2
# k8s.io/component-base => k8s.io/component-base v0.29.2
# k8s.io/component-helpers => k8s.io/component-helpers v0.29.2
# k8s.io/controller-manager => k8s.io/controller-manager v0.29.2
# k8s.io/cri-api => k8s.io/cri-api v0.29.2
# k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.29.2
# k8s.io/dynamic-resource-allocation => k8s.io/dynamic-resource-allocation v0.29.2
# k8s.io/endpointslice => k8s.io/endpointslice v0.29.2
# k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.29.2
# k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.29.2
# k8s.io/kube-proxy => k8s.io/kube-proxy v0.29.2
# k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.29.2
# k8s.io/kubectl => k8s.io/kubectl v0.29.2
# k8s.io/kubelet => k8s.io/kubelet v0.29.2
# k8s.io/legacy-cloud-providers => k8s.io/legacy-cloud-providers v0.29.2
# k8s.io/metrics => k8s.io/metrics v0.29.2
# k8s.io/mount-utils => k8s.io/mount-utils v0.29.2
# k8s.io/pod-security-admission => k8s.io/pod-security-admission v0.29.2
# k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.29.2
# layeh.com/radius => github.com/layeh/radius v0.0.0-20190322222518-890bc1058917

View File

@ -53,7 +53,7 @@ func NewDynamicRESTMapper(cfg *rest.Config, httpClient *http.Client) (meta.RESTM
// client for discovery information to do REST mappings.
type mapper struct {
mapper meta.RESTMapper
client *discovery.DiscoveryClient
client discovery.DiscoveryInterface
knownGroups map[string]*restmapper.APIGroupResources
apiGroups map[string]*metav1.APIGroup
@ -280,11 +280,15 @@ func (m *mapper) fetchGroupVersionResourcesLocked(groupName string, versions ...
groupVersion := schema.GroupVersion{Group: groupName, Version: version}
apiResourceList, err := m.client.ServerResourcesForGroupVersion(groupVersion.String())
if apierrors.IsNotFound(err) && m.isGroupVersionCached(groupVersion) {
if apierrors.IsNotFound(err) {
// If the version is not found, we remove the group from the cache
// so it gets refreshed on the next call.
delete(m.apiGroups, groupName)
delete(m.knownGroups, groupName)
if m.isAPIGroupCached(groupVersion) {
delete(m.apiGroups, groupName)
}
if m.isGroupVersionCached(groupVersion) {
delete(m.knownGroups, groupName)
}
continue
} else if err != nil {
failedGroups[groupVersion] = err
@ -313,3 +317,19 @@ func (m *mapper) isGroupVersionCached(gv schema.GroupVersion) bool {
return false
}
// isAPIGroupCached checks if a version for a group is cached in the api groups cache.
func (m *mapper) isAPIGroupCached(gv schema.GroupVersion) bool {
cachedGroup, ok := m.apiGroups[gv.Group]
if !ok {
return false
}
for _, version := range cachedGroup.Versions {
if version.Version == gv.Version {
return true
}
}
return false
}