summaryrefslogtreecommitdiff
path: root/vendor/k8s.io/kubernetes/pkg/volume/csi/csi_metrics.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/k8s.io/kubernetes/pkg/volume/csi/csi_metrics.go')
-rw-r--r--vendor/k8s.io/kubernetes/pkg/volume/csi/csi_metrics.go5
1 files changed, 4 insertions, 1 deletions
diff --git a/vendor/k8s.io/kubernetes/pkg/volume/csi/csi_metrics.go b/vendor/k8s.io/kubernetes/pkg/volume/csi/csi_metrics.go
index b61e2fd28..1703e5447 100644
--- a/vendor/k8s.io/kubernetes/pkg/volume/csi/csi_metrics.go
+++ b/vendor/k8s.io/kubernetes/pkg/volume/csi/csi_metrics.go
@@ -26,6 +26,7 @@ import (
servermetrics "k8s.io/kubernetes/pkg/kubelet/server/metrics"
"k8s.io/kubernetes/pkg/volume"
volumeutil "k8s.io/kubernetes/pkg/volume/util"
+ volumetypes "k8s.io/kubernetes/pkg/volume/util/types"
)
var _ volume.MetricsProvider = &metricsCsi{}
@@ -60,7 +61,9 @@ func (mc *metricsCsi) GetMetrics() (*volume.Metrics, error) {
// Get CSI client
csiClient, err := mc.csiClientGetter.Get()
if err != nil {
- return nil, err
+ // Treat the absence of the CSI driver as a transient error
+ // See https://github.com/kubernetes/kubernetes/issues/120268
+ return nil, volumetypes.NewTransientOperationFailure(err.Error())
}
// Check whether "GET_VOLUME_STATS" is set
volumeStatsSet, err := csiClient.NodeSupportsVolumeStats(ctx)