func (v *Volume) SetPath(p string) {
	v.Status.MountPoint = p
}
SetPath save the volume's path on host into volume meta data.
package types
import (
	"fmt"
	"strings"
	"time"
	"github.com/alibaba/pouch/storage/volume/types/meta"
)
type VolumeConditionType string
const (
	VolumeScheduled VolumeConditionType = "Scheduled"
	VolumeInitialized VolumeConditionType = "Initialized"
	VolumeStopped VolumeConditionType = "Stopped"
	VolumeStarted VolumeConditionType = "Started"
	VolumeRestarted VolumeConditionType = "Restarted"
	VolumeUpdated VolumeConditionType = "Updated"
	VolumeDeleted VolumeConditionType = "Deleted"
)
type VolumeCondition struct {
	Type               VolumeConditionType `json:"type"`
	Status             ConditionStatus     `json:"status"`
	LastProbeTime      *time.Time          `json:"lastProbeTime,omitempty"`
	LastTransitionTime *time.Time          `json:"lastTransitionTime,omitempty"`
	Reason             string              `json:"reason,omitempty"`
	Message            string              `json:"message,omitempty"`
	Retry              int                 `json:"retry,omitempty"`
}
type ConditionStatus string
const (
	ConditionTrue ConditionStatus = "True"
	ConditionFalse ConditionStatus = "False"
	ConditionUnknown ConditionStatus = "Unknown"
)
type VolumePhase string
var (
	VolumePhasePending VolumePhase = "Pending"
	VolumePhaseReady VolumePhase = "Ready"
	VolumePhaseUnknown VolumePhase = "Unknown"
	VolumePhaseFailed VolumePhase = "Failed"
)
type VolumeConfig struct {
	Size       string `json:"size"`
	FileSystem string `json:"filesystem"`
	MountOpt   string `json:"mountopt"`
	WriteBPS   int64  `json:"wbps"`
	ReadBPS    int64  `json:"rbps"`
	WriteIOPS  int64  `json:"wiops"`
	ReadIOPS   int64  `json:"riops"`
	TotalIOPS  int64  `json:"iops"`
}
type VolumeSpec struct {
	ClusterID     string   `json:"clusterid"`
	Selector      Selector `json:"selector"`
	Operable      bool     `json:"operable"`
	Backend       string   `json:"backend,omitempty"`
	MountMode     string   `json:"mountMode,omitempty"`
	*VolumeConfig `json:"config,inline"`
	Extra         map[string]string `json:"extra"`
}
type VolumeStatus struct {
	Phase               VolumePhase       `json:"phase"`
	StartTimestamp      *time.Time        `json:"startTimestamp"`
	LastUpdateTimestamp *time.Time        `json:"lastUpdateTime"`
	Conditions          []VolumeCondition `json:"Conditions,omitempty"`
	HostIP              string            `json:"hostip,omitempty"`
	MountPoint          string            `json:"mountpath,omitempty"`
	Reason              string            `json:"reason"`
	Message             string            `json:"message"`
}
type VolumeList struct {
	meta.ListMeta `json:",inline,omitempty"`
	Items         []Volume `json:"Items,omitempty"`
}
type Volume struct {
	meta.ObjectMeta `json:",inline"`
	Spec            *VolumeSpec   `json:"Spec,omitempty"`
	Status          *VolumeStatus `json:"Status,omitempty"`
}