parent
							
								
									7abba86274
								
							
						
					
					
						commit
						a6c1e8f64d
					
				|  | @ -4,15 +4,15 @@ import ( | ||||||
| 	"bytes" | 	"bytes" | ||||||
| 	"encoding/json" | 	"encoding/json" | ||||||
| 	"fmt" | 	"fmt" | ||||||
| 	"strings" |  | ||||||
| 	"regexp" | 	"regexp" | ||||||
|  | 	"strings" | ||||||
| 	"time" | 	"time" | ||||||
| 
 | 
 | ||||||
|  | 	remotecommandconsts "k8s.io/apimachinery/pkg/util/remotecommand" | ||||||
|  | 	"k8s.io/client-go/pkg/api" | ||||||
| 	"k8s.io/client-go/pkg/api/v1" | 	"k8s.io/client-go/pkg/api/v1" | ||||||
| 	"k8s.io/client-go/pkg/apis/apps/v1beta1" | 	"k8s.io/client-go/pkg/apis/apps/v1beta1" | ||||||
| 	"k8s.io/client-go/pkg/labels" | 	"k8s.io/client-go/pkg/labels" | ||||||
| 	remotecommandconsts "k8s.io/apimachinery/pkg/util/remotecommand" |  | ||||||
| 	"k8s.io/client-go/pkg/api" |  | ||||||
| 	"k8s.io/kubernetes/pkg/client/unversioned/remotecommand" | 	"k8s.io/kubernetes/pkg/client/unversioned/remotecommand" | ||||||
| 
 | 
 | ||||||
| 	"github.com/zalando-incubator/postgres-operator/pkg/spec" | 	"github.com/zalando-incubator/postgres-operator/pkg/spec" | ||||||
|  |  | ||||||
|  | @ -139,15 +139,16 @@ func (c *Cluster) resizeVolumes(newVolume spec.Volume, resizers []volumes.Volume | ||||||
| 	if len(pvs) > 0 && totalCompatible == 0 { | 	if len(pvs) > 0 && totalCompatible == 0 { | ||||||
| 		return fmt.Errorf("could not resize EBS volumes: persistent volumes are not compatible with existing resizing providers") | 		return fmt.Errorf("could not resize EBS volumes: persistent volumes are not compatible with existing resizing providers") | ||||||
| 	} | 	} | ||||||
|  | 
 | ||||||
| 	return nil | 	return nil | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func (c *Cluster) volumesNeedResizing(newVolume spec.Volume) (bool, error) { | func (c *Cluster) volumesNeedResizing(newVolume spec.Volume) (bool, error) { | ||||||
| 	volumes, manifestSize, err := c.listVolumesWithManifestSize(newVolume) | 	vlms, manifestSize, err := c.listVolumesWithManifestSize(newVolume) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		return false, err | 		return false, err | ||||||
| 	} | 	} | ||||||
| 	for _, pv := range volumes { | 	for _, pv := range vlms { | ||||||
| 		currentSize := quantityToGigabyte(pv.Spec.Capacity[v1.ResourceStorage]) | 		currentSize := quantityToGigabyte(pv.Spec.Capacity[v1.ResourceStorage]) | ||||||
| 		if currentSize != manifestSize { | 		if currentSize != manifestSize { | ||||||
| 			return true, nil | 			return true, nil | ||||||
|  | @ -162,17 +163,19 @@ func (c *Cluster) listVolumesWithManifestSize(newVolume spec.Volume) ([]*v1.Pers | ||||||
| 		return nil, 0, fmt.Errorf("could not parse volume size from the manifest: %v", err) | 		return nil, 0, fmt.Errorf("could not parse volume size from the manifest: %v", err) | ||||||
| 	} | 	} | ||||||
| 	manifestSize := quantityToGigabyte(newSize) | 	manifestSize := quantityToGigabyte(newSize) | ||||||
| 	volumes, err := c.listPersistentVolumes() | 	vlms, err := c.listPersistentVolumes() | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		return nil, 0, fmt.Errorf("could not list persistent volumes: %v", err) | 		return nil, 0, fmt.Errorf("could not list persistent volumes: %v", err) | ||||||
| 	} | 	} | ||||||
| 	return volumes, manifestSize, nil | 
 | ||||||
|  | 	return vlms, manifestSize, nil | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| // getPodNameFromPersistentVolume returns a pod name that it extracts from the volume claim ref.
 | // getPodNameFromPersistentVolume returns a pod name that it extracts from the volume claim ref.
 | ||||||
| func getPodNameFromPersistentVolume(pv *v1.PersistentVolume) *spec.NamespacedName { | func getPodNameFromPersistentVolume(pv *v1.PersistentVolume) *spec.NamespacedName { | ||||||
| 	namespace := pv.Spec.ClaimRef.Namespace | 	namespace := pv.Spec.ClaimRef.Namespace | ||||||
| 	name := pv.Spec.ClaimRef.Name[len(constants.DataVolumeName)+1:] | 	name := pv.Spec.ClaimRef.Name[len(constants.DataVolumeName)+1:] | ||||||
|  | 
 | ||||||
| 	return &spec.NamespacedName{namespace, name} | 	return &spec.NamespacedName{namespace, name} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue