ScaleIO Volume Plugin - volume attribute updates
This commit introduces the following updates and fixes: - Enable scaleIO volume multip-mapping based on accessMode - No longer uses "default" as default values for storagepool & protection domain - validates capacity when capacity is zero - Better naming for PV and volume - make mount ro when accessModes contains ROM
This commit is contained in:
@@ -45,7 +45,7 @@ type sioInterface interface {
|
||||
FindVolume(name string) (*siotypes.Volume, error)
|
||||
Volume(sioVolumeID) (*siotypes.Volume, error)
|
||||
CreateVolume(name string, sizeGB int64) (*siotypes.Volume, error)
|
||||
AttachVolume(sioVolumeID) error
|
||||
AttachVolume(sioVolumeID, bool) error
|
||||
DetachVolume(sioVolumeID) error
|
||||
DeleteVolume(sioVolumeID) error
|
||||
IID() (string, error)
|
||||
@@ -217,8 +217,9 @@ func (c *sioClient) CreateVolume(name string, sizeGB int64) (*siotypes.Volume, e
|
||||
return c.Volume(sioVolumeID(createResponse.ID))
|
||||
}
|
||||
|
||||
// AttachVolume maps the scaleio volume to an sdc node.
|
||||
func (c *sioClient) AttachVolume(id sioVolumeID) error {
|
||||
// AttachVolume maps the scaleio volume to an sdc node. If the multipleMappings flag
|
||||
// is true, ScaleIO will allow other SDC to map to that volume.
|
||||
func (c *sioClient) AttachVolume(id sioVolumeID, multipleMappings bool) error {
|
||||
if err := c.init(); err != nil {
|
||||
glog.Error(log("failed to init'd client in attach volume: %v", err))
|
||||
return err
|
||||
@@ -232,7 +233,7 @@ func (c *sioClient) AttachVolume(id sioVolumeID) error {
|
||||
|
||||
params := &siotypes.MapVolumeSdcParam{
|
||||
SdcID: iid,
|
||||
AllowMultipleMappings: "false",
|
||||
AllowMultipleMappings: strconv.FormatBool(multipleMappings),
|
||||
AllSdcs: "",
|
||||
}
|
||||
volClient := sio.NewVolume(c.client)
|
||||
|
Reference in New Issue
Block a user