Forráskód Böngészése

use reduced PersistentVolumeClaim struct

Signed-off-by: r2k1 <yokree@gmail.com>
r2k1 2 éve
szülő
commit
622eb40c7e
2 módosított fájl, 21 hozzáadás és 5 törlés
  1. 20 4
      pkg/clustercache/clustercache.go
  2. 1 1
      pkg/metrics/kubemetrics.go

+ 20 - 4
pkg/clustercache/clustercache.go

@@ -206,6 +206,22 @@ func transformPersistentVolume(input *v1.PersistentVolume) *PersistentVolume {
 	}
 }
 
+type PersistentVolumeClaim struct {
+	Name        string
+	Namespace   string
+	Spec        v1.PersistentVolumeClaimSpec
+	Annotations map[string]string
+}
+
+func transformPersistentVolumeClaim(input *v1.PersistentVolumeClaim) *PersistentVolumeClaim {
+	return &PersistentVolumeClaim{
+		Name:        input.Name,
+		Namespace:   input.Namespace,
+		Spec:        input.Spec,
+		Annotations: input.Annotations,
+	}
+}
+
 // ClusterCache defines an contract for an object which caches components within a cluster, ensuring
 // up to date resources using watchers
 type ClusterCache interface {
@@ -240,7 +256,7 @@ type ClusterCache interface {
 	GetAllPersistentVolumes() []*PersistentVolume
 
 	// GetAllPersistentVolumeClaims returns all the cached persistent volume claims
-	GetAllPersistentVolumeClaims() []*v1.PersistentVolumeClaim
+	GetAllPersistentVolumeClaims() []*PersistentVolumeClaim
 
 	// GetAllStorageClasses returns all the cached storage classes
 	GetAllStorageClasses() []*stv1.StorageClass
@@ -440,11 +456,11 @@ func (kcc *KubernetesClusterCache) GetAllPersistentVolumes() []*PersistentVolume
 	return pvs
 }
 
-func (kcc *KubernetesClusterCache) GetAllPersistentVolumeClaims() []*v1.PersistentVolumeClaim {
-	var pvcs []*v1.PersistentVolumeClaim
+func (kcc *KubernetesClusterCache) GetAllPersistentVolumeClaims() []*PersistentVolumeClaim {
+	var pvcs []*PersistentVolumeClaim
 	items := kcc.pvcWatch.GetAll()
 	for _, pvc := range items {
-		pvcs = append(pvcs, pvc.(*v1.PersistentVolumeClaim))
+		pvcs = append(pvcs, transformPersistentVolumeClaim(pvc.(*v1.PersistentVolumeClaim)))
 	}
 	return pvcs
 }

+ 1 - 1
pkg/metrics/kubemetrics.go

@@ -161,7 +161,7 @@ func InitKubeMetrics(clusterCache clustercache.ClusterCache, metricsConfig *Metr
 
 // getPersistentVolumeClaimClass returns StorageClassName. If no storage class was
 // requested, it returns "".
-func getPersistentVolumeClaimClass(claim *v1.PersistentVolumeClaim) string {
+func getPersistentVolumeClaimClass(claim *clustercache.PersistentVolumeClaim) string {
 	// Use beta annotation first
 	if class, found := claim.Annotations[v1.BetaStorageClassAnnotation]; found {
 		return class