goscaleio

package
v1.14.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 13, 2024 License: Apache-2.0 Imports: 6 Imported by: 2

Documentation

Index

Constants

View Source
const (
	FiveNodesClusterMode  = "FiveNodes"
	ThreeNodesClusterMode = "ThreeNodes"
)

Constants representing cluster mode

View Source
const (
	Manager    = "Manager"
	TieBreaker = "TieBreaker"
)

Constants representing MDM role

View Source
const (
	SdsDrlModeVolatile        = "Volatile"
	SdsDrlModeNonVolatile     = "NonVolatile"
	PerformanceProfileHigh    = "HighPerformance"
	PerformanceProfileCompact = "Compact"
)

Constants representing states of SDS

Variables

This section is empty.

Functions

func GetBoolType added in v1.10.0

func GetBoolType(b bool) string

GetBoolType returns the true and false strings expected by the REST API

func TranslateErrorCodeToErrorMessage

func TranslateErrorCodeToErrorMessage(code string) string

TranslateErrorCodeToErrorMessage translates an error code to error message

Types

type AccelerationPool added in v1.14.0

type AccelerationPool struct {
	ID                 string `json:"id,omitempty"`
	Name               string `json:"name,omitempty"`
	ProtectionDomainID string `json:"protectionDomainId,omitempty"`
	MediaType          string `json:"mediaType,omitempty"`
	Rfcache            bool   `json:"rfcache,omitempty"`
}

type AccelerationPropsParams added in v1.11.0

type AccelerationPropsParams struct {
	AccUsedCapacityInKb string `json:"accUsedCapacityInKb,omitempty"`
}

AccelerationPropsParams defines struct for Device

type AdditionalPropDetails added in v1.14.0

type AdditionalPropDetails struct {
	GUID                     string                     `json:"guid,omitempty"`
	ID                       string                     `json:"id,omitempty"`
	Type                     string                     `json:"type,omitempty"`
	DisplayName              string                     `json:"displayName,omitempty"`
	Value                    string                     `json:"value,omitempty"`
	ToolTip                  string                     `json:"toolTip,omitempty"`
	Required                 bool                       `json:"required,omitempty"`
	RequiredAtDeployment     bool                       `json:"requiredAtDeployment,omitempty"`
	HideFromTemplate         bool                       `json:"hideFromTemplate,omitempty"`
	Dependencies             []DependenciesDetails      `json:"dependencies,omitempty"`
	Group                    string                     `json:"group,omitempty"`
	ReadOnly                 bool                       `json:"readOnly,omitempty"`
	Generated                bool                       `json:"generated,omitempty"`
	InfoIcon                 bool                       `json:"infoIcon,omitempty"`
	Step                     int                        `json:"step,omitempty"`
	MaxLength                int                        `json:"maxLength,omitempty"`
	Min                      int                        `json:"min,omitempty"`
	Max                      int                        `json:"max,omitempty"`
	NetworkIPAddressList     []NetworkIPAddressList     `json:"networkIpAddressList,omitempty"`
	NetworkConfiguration     NetworkConfiguration       `json:"networkConfiguration,omitempty"`
	RaidConfiguration        RaidConfiguration          `json:"raidConfiguration,omitempty"`
	Options                  []Options                  `json:"options,omitempty"`
	OptionsSortable          bool                       `json:"optionsSortable,omitempty"`
	PreservedForDeployment   bool                       `json:"preservedForDeployment,omitempty"`
	ScaleIODiskConfiguration ScaleIODiskConfiguration   `json:"scaleIODiskConfiguration,omitempty"`
	ProtectionDomainSettings []ProtectionDomainSettings `json:"protectionDomainSettings,omitempty"`
	FaultSetSettings         []FaultSetSettings         `json:"faultSetSettings,omitempty"`
	Attributes               map[string]string          `json:"attributes,omitempty"`
	VdsConfiguration         VdsConfiguration           `json:"vdsConfiguration,omitempty"`
	NodeSelection            NodeSelection              `json:"nodeSelection,omitempty"`
}

type ApproveSdcByGUIDResponse added in v1.10.0

type ApproveSdcByGUIDResponse struct {
	SdcID string `json:"id"`
}

ApproveSdcByGUIDResponse defines struct for ApproveSdcByGUIDResponse

type ApproveSdcParam added in v1.10.0

type ApproveSdcParam struct {
	SdcGUID string `json:"sdcGuid"`
}

ApproveSdcParam defines struct for ApproveSdcParam

type AssignVolumeToSnapshotPolicyParam added in v1.14.0

type AssignVolumeToSnapshotPolicyParam struct {
	SourceVolumeId            string `json:"sourceVolumeId"`
	AutoSnapshotRemovalAction string `json:"autoSnapshotRemovalAction,omitempty"`
}

AssignVolumeToSnapshotPolicyParam defines the struct for assigning volume to a Snapshot Policy

type AssignedUsers added in v1.14.0

type AssignedUsers struct {
	UserSeqID      int      `json:"userSeqId,omitempty"`
	UserName       string   `json:"userName,omitempty"`
	Password       string   `json:"password,omitempty"`
	UpdatePassword bool     `json:"updatePassword,omitempty"`
	DomainName     string   `json:"domainName,omitempty"`
	GroupDN        string   `json:"groupDN,omitempty"`
	GroupName      string   `json:"groupName,omitempty"`
	FirstName      string   `json:"firstName,omitempty"`
	LastName       string   `json:"lastName,omitempty"`
	Email          string   `json:"email,omitempty"`
	PhoneNumber    string   `json:"phoneNumber,omitempty"`
	Enabled        bool     `json:"enabled,omitempty"`
	SystemUser     bool     `json:"systemUser,omitempty"`
	CreatedDate    string   `json:"createdDate,omitempty"`
	CreatedBy      string   `json:"createdBy,omitempty"`
	UpdatedDate    string   `json:"updatedDate,omitempty"`
	UpdatedBy      string   `json:"updatedBy,omitempty"`
	Link           Link     `json:"link,omitempty"`
	Role           string   `json:"role,omitempty"`
	UserPreference string   `json:"userPreference,omitempty"`
	ID             string   `json:"id,omitempty"`
	Roles          []string `json:"roles,omitempty"`
}

type BWC

type BWC struct {
	TotalWeightInKb int `json:"totalWeightInKb"`
	NumOccured      int `json:"numOccured"`
	NumSeconds      int `json:"numSeconds"`
}

BWC defines struct of BWC

type CapacityAlertThresholdParam added in v1.11.0

type CapacityAlertThresholdParam struct {
	CapacityAlertHighThresholdPercent     string `json:"capacityAlertHighThresholdPercent,omitempty"`
	CapacityAlertCriticalThresholdPercent string `json:"capacityAlertCriticalThresholdPercent,omitempty"`
}

CapacityAlertThresholdParam defines struct for Capacity Alert Threshold

type Categories added in v1.14.0

type Categories struct {
	ID          string       `json:"id,omitempty"`
	DisplayName string       `json:"displayName,omitempty"`
	DeviceType  string       `json:"deviceType,omitempty"`
	Parameters  []Parameters `json:"parameters,omitempty"`
}

type CertificateInfo added in v1.10.0

type CertificateInfo struct {
	Subject             string `json:"subject,omitempty"`
	Issuer              string `json:"issuer,omitempty"`
	ValidFrom           string `json:"validFrom,omitempty"`
	ValidTo             string `json:"validTo,omitempty"`
	Thumbprint          string `json:"thumbprint,omitempty"`
	ValidFromAsn1Format string `json:"validFromAsn1Format,omitempty"`
	ValidToAsn1Format   string `json:"validToAsn1Format,omitempty"`
}

CertificateInfo defines struct for certificate information

type ChangeMdmOwnerShip added in v1.12.0

type ChangeMdmOwnerShip struct {
	ID string `json:"id"`
}

ChangeMdmOwnerShip defines struct for changing MDM ownership

type ChangeMdmPerfProfile added in v1.12.0

type ChangeMdmPerfProfile struct {
	PerfProfile string `json:"perfProfile"`
}

ChangeMdmPerfProfile defines struct for modifying performance profile

type ChangeSdcNameParam added in v1.10.0

type ChangeSdcNameParam struct {
	SdcName string `json:"sdcName"`
}

ChangeSdcNameParam defines struct for passing parameters to changeSDCname endpoint

type ChangeSdcPerfProfile added in v1.12.0

type ChangeSdcPerfProfile struct {
	PerfProfile string `json:"perfProfile"`
}

ChangeSdcPerfProfile defines struct for passing parameters to setSdcPerformanceParameters endpoint

type ComponentValid added in v1.14.0

type ComponentValid struct {
	Valid    bool       `json:"valid,omitempty"`
	Messages []Messages `json:"messages,omitempty"`
}

type Components added in v1.14.0

type Components struct {
	ID                  string            `json:"id,omitempty"`
	ComponentID         string            `json:"componentID,omitempty"`
	Identifier          string            `json:"identifier,omitempty"`
	ComponentValid      ComponentValid    `json:"componentValid,omitempty"`
	Name                string            `json:"name,omitempty"`
	HelpText            string            `json:"helpText,omitempty"`
	ClonedFromID        string            `json:"clonedFromId,omitempty"`
	Teardown            bool              `json:"teardown,omitempty"`
	Type                string            `json:"type,omitempty"`
	SubType             string            `json:"subType,omitempty"`
	RelatedComponents   map[string]string `json:"relatedComponents,omitempty"`
	Resources           []Resources       `json:"resources,omitempty"`
	Brownfield          bool              `json:"brownfield,omitempty"`
	PuppetCertName      string            `json:"puppetCertName,omitempty"`
	OsPuppetCertName    string            `json:"osPuppetCertName,omitempty"`
	ManagementIPAddress string            `json:"managementIpAddress,omitempty"`
	SerialNumber        string            `json:"serialNumber,omitempty"`
	AsmGUID             string            `json:"asmGUID,omitempty"`
	Cloned              bool              `json:"cloned,omitempty"`
	ConfigFile          string            `json:"configFile,omitempty"`
	ManageFirmware      bool              `json:"manageFirmware,omitempty"`
	Instances           int               `json:"instances,omitempty"`
	RefID               string            `json:"refId,omitempty"`
	ClonedFromAsmGUID   string            `json:"clonedFromAsmGuid,omitempty"`
	Changed             bool              `json:"changed,omitempty"`
	IP                  string            `json:"ip,omitempty"`
}

type ConfigurationDetails added in v1.14.0

type ConfigurationDetails struct {
	ID              string       `json:"id,omitempty"`
	Disktype        string       `json:"disktype,omitempty"`
	Comparator      string       `json:"comparator,omitempty"`
	Numberofdisks   int          `json:"numberofdisks,omitempty"`
	Raidlevel       string       `json:"raidlevel,omitempty"`
	VirtualDiskFqdd string       `json:"virtualDiskFqdd,omitempty"`
	ControllerFqdd  string       `json:"controllerFqdd,omitempty"`
	Categories      []Categories `json:"categories,omitempty"`
}

type CreateFileSystemSnapshotParam added in v1.12.0

type CreateFileSystemSnapshotParam struct {
	Name                       string `json:"name,omitempty"`
	Description                string `json:"description,omitempty"`
	ExpirationTimestamp        string `json:"expiration_timestamp,omitempty"`
	AccessType                 string `json:"access_type,omitempty"`
	AccessPolicy               string `json:"access_policy,omitempty"`
	LockingPolicy              string `json:"locking_policy,omitempty"`
	FolderRenamePolicy         string `json:"folder_rename_policy,omitempty"`
	IsSmbSyncWritesEnabled     bool   `json:"is_smb_sync_writes_enabled,omitempty"`
	IsSmbNoNotifyEnabled       bool   `json:"is_smb_no_notify_enabled,omitempty"`
	IsSmbOpLocksEnabled        bool   `json:"is_smb_op_locks_enabled,omitempty"`
	IsSmbNotifyOnAccessEnabled bool   `json:"is_smb_notify_on_access_enabled,omitempty"`
	IsSmbNotifyOnWriteEnabled  bool   `json:"is_smb_notify_on_write_enabled,omitempty"`
	SmbNotifyOnChangeDirDepth  int    `json:"smb_notify_on_change_dir_depth,omitempty"`
	IsAsyncMTimeEnabled        bool   `json:"is_async_MTime_enabled,omitempty"`
}

CreateFileSystemSnapshotParam defines struct for FileSystem Snapshot Request

type CreateFileSystemSnapshotResponse added in v1.12.0

type CreateFileSystemSnapshotResponse struct {
	ID string `json:"id,omitempty"`
}

CreateFileSystemSnapshotResponse defines struct for FileSystem Snapshot Response

type CreateNASParam added in v1.11.0

type CreateNASParam struct {
	Name                         string `json:"name"`
	ProtectionDomainID           string `json:"protection_domain_id"`
	Description                  string `json:"description,omitempty"`
	CurrentUnixDirectoryService  string `json:"current_unix_directory_service,omitempty"`
	DefaultUnixUser              string `json:"default_unix_user,omitempty"`
	DefaultWindowsUser           string `json:"default_windows_user,omitempty"`
	IsUsernameTranslationEnabled bool   `json:"is_username_translation_enabled,omitempty"`
	IsAutoUserMappingEnabled     bool   `json:"is_auto_user_mapping_enabled,omitempty"`
}

CreateNASParam defines the struct for CreateNASParam

type CreateNASResponse added in v1.11.0

type CreateNASResponse struct {
	ID string `json:"id"`
}

CreateNASResponse defines the struct for CreateNASResponse

type CreateReplicationConsistencyGroupSnapshot added in v1.10.0

type CreateReplicationConsistencyGroupSnapshot struct {
	Force bool `json:"force,omitempty"`
}

CreateReplicationConsistencyGroupSnapshot defines struct for CreateReplicationConsistencyGroupSnapshot.

type CreateReplicationConsistencyGroupSnapshotResp added in v1.10.0

type CreateReplicationConsistencyGroupSnapshotResp struct {
	SnapshotGroupID string `json:"snapshotGroupId"`
}

CreateReplicationConsistencyGroupSnapshotResp defines struct for CreateReplicationConsistencyGroupSnapshotResp.

type Datacenter added in v1.14.0

type Datacenter struct {
	VcenterID      string `json:"vcenterId,omitempty"`
	DatacenterID   string `json:"datacenterId,omitempty"`
	DatacenterName string `json:"datacenterName,omitempty"`
}

type DependenciesDetails added in v1.14.0

type DependenciesDetails struct {
	ID               string `json:"id,omitempty"`
	DependencyTarget string `json:"dependencyTarget,omitempty"`
	DependencyValue  string `json:"dependencyValue,omitempty"`
}

type DeploymentDevice added in v1.14.0

type DeploymentDevice struct {
	RefID            string `json:"refId,omitempty"`
	RefType          string `json:"refType,omitempty"`
	LogDump          string `json:"logDump,omitempty"`
	Status           string `json:"status,omitempty"`
	StatusEndTime    string `json:"statusEndTime,omitempty"`
	StatusStartTime  string `json:"statusStartTime,omitempty"`
	DeviceHealth     string `json:"deviceHealth,omitempty"`
	HealthMessage    string `json:"healthMessage,omitempty"`
	CompliantState   string `json:"compliantState,omitempty"`
	BrownfieldStatus string `json:"brownfieldStatus,omitempty"`
	DeviceType       string `json:"deviceType,omitempty"`
	DeviceGroupName  string `json:"deviceGroupName,omitempty"`
	IPAddress        string `json:"ipAddress,omitempty"`
	CurrentIPAddress string `json:"currentIpAddress,omitempty"`
	ServiceTag       string `json:"serviceTag,omitempty"`
	ComponentID      string `json:"componentId,omitempty"`
	StatusMessage    string `json:"statusMessage,omitempty"`
	Model            string `json:"model,omitempty"`
	CloudLink        bool   `json:"cloudLink,omitempty"`
	DasCache         bool   `json:"dasCache,omitempty"`
	DeviceState      string `json:"deviceState,omitempty"`
	PuppetCertName   string `json:"puppetCertName,omitempty"`
	Brownfield       bool   `json:"brownfield,omitempty"`
}

type DeploymentPayload added in v1.14.0

type DeploymentPayload struct {
	DeploymentName        string          `json:"deploymentName,omitempty"`
	DeploymentDescription string          `json:"deploymentDescription,omitempty"`
	ServiceTemplate       TemplateDetails `json:"serviceTemplate,omitempty"`
	UpdateServerFirmware  bool            `json:"updateServerFirmware,omitempty"`
	FirmwareRepositoryID  string          `json:"firmwareRepositoryId,omitempty"`
	Status                string          `json:"status,omitempty"`
}

type DeploymentValid added in v1.14.0

type DeploymentValid struct {
	Valid    bool       `json:"valid,omitempty"`
	Messages []Messages `json:"messages,omitempty"`
}

type DeploymentValidationResponse added in v1.14.0

type DeploymentValidationResponse struct {
	Nodes                  int      `json:"nodes,omitempty"`
	StoragePools           int      `json:"storagePools,omitempty"`
	DrivesPerStoragePool   int      `json:"drivesPerStoragePool,omitempty"`
	MaxScalability         int      `json:"maxScalability,omitempty"`
	VirtualMachines        int      `json:"virtualMachines,omitempty"`
	NumberOfServiceVolumes int      `json:"numberOfServiceVolumes,omitempty"`
	CanDeploy              bool     `json:"canDeploy,omitempty"`
	WarningMessages        []string `json:"warningMessages,omitempty"`
	StoragePoolDiskType    []string `json:"storagePoolDiskType,omitempty"`
	Hostnames              []string `json:"hostnames,omitempty"`
	NewNodeDiskTypes       []string `json:"newNodeDiskTypes,omitempty"`
	NoOfFaultSets          int      `json:"noOfFaultSets,omitempty"`
	NodesPerFaultSet       int      `json:"nodesPerFaultSet,omitempty"`
	ProtectionDomain       string   `json:"protectionDomain,omitempty"`
	DiskTypeMismatch       bool     `json:"diskTypeMismatch,omitempty"`
}

type Deployments added in v1.14.0

type Deployments struct {
	ID                           string                       `json:"id,omitempty"`
	DeploymentName               string                       `json:"deploymentName,omitempty"`
	DeploymentDescription        string                       `json:"deploymentDescription,omitempty"`
	DeploymentValid              DeploymentValid              `json:"deploymentValid,omitempty"`
	Retry                        bool                         `json:"retry,omitempty"`
	Teardown                     bool                         `json:"teardown,omitempty"`
	TeardownAfterCancel          bool                         `json:"teardownAfterCancel,omitempty"`
	RemoveService                bool                         `json:"removeService,omitempty"`
	CreatedDate                  string                       `json:"createdDate,omitempty"`
	CreatedBy                    string                       `json:"createdBy,omitempty"`
	UpdatedDate                  string                       `json:"updatedDate,omitempty"`
	UpdatedBy                    string                       `json:"updatedBy,omitempty"`
	DeploymentScheduledDate      string                       `json:"deploymentScheduledDate,omitempty"`
	DeploymentStartedDate        string                       `json:"deploymentStartedDate,omitempty"`
	DeploymentFinishedDate       string                       `json:"deploymentFinishedDate,omitempty"`
	ScheduleDate                 string                       `json:"scheduleDate,omitempty"`
	Status                       string                       `json:"status,omitempty"`
	Compliant                    bool                         `json:"compliant,omitempty"`
	DeploymentDevice             []DeploymentDevice           `json:"deploymentDevice,omitempty"`
	Vms                          []Vms                        `json:"vms,omitempty"`
	UpdateServerFirmware         bool                         `json:"updateServerFirmware,omitempty"`
	UseDefaultCatalog            bool                         `json:"useDefaultCatalog,omitempty"`
	FirmwareRepositoryID         string                       `json:"firmwareRepositoryId,omitempty"`
	LicenseRepository            LicenseRepository            `json:"licenseRepository,omitempty"`
	LicenseRepositoryID          string                       `json:"licenseRepositoryId,omitempty"`
	IndividualTeardown           bool                         `json:"individualTeardown,omitempty"`
	DeploymentHealthStatusType   string                       `json:"deploymentHealthStatusType,omitempty"`
	AssignedUsers                []AssignedUsers              `json:"assignedUsers,omitempty"`
	AllUsersAllowed              bool                         `json:"allUsersAllowed,omitempty"`
	Owner                        string                       `json:"owner,omitempty"`
	NoOp                         bool                         `json:"noOp,omitempty"`
	FirmwareInit                 bool                         `json:"firmwareInit,omitempty"`
	DisruptiveFirmware           bool                         `json:"disruptiveFirmware,omitempty"`
	PreconfigureSVM              bool                         `json:"preconfigureSVM,omitempty"`
	PreconfigureSVMAndUpdate     bool                         `json:"preconfigureSVMAndUpdate,omitempty"`
	ServicesDeployed             string                       `json:"servicesDeployed,omitempty"`
	PrecalculatedDeviceHealth    string                       `json:"precalculatedDeviceHealth,omitempty"`
	LifecycleModeReasons         []string                     `json:"lifecycleModeReasons,omitempty"`
	JobDetails                   []JobDetails                 `json:"jobDetails,omitempty"`
	NumberOfDeployments          int                          `json:"numberOfDeployments,omitempty"`
	OperationType                string                       `json:"operationType,omitempty"`
	OperationStatus              string                       `json:"operationStatus,omitempty"`
	OperationData                string                       `json:"operationData,omitempty"`
	DeploymentValidationResponse DeploymentValidationResponse `json:"deploymentValidationResponse,omitempty"`
	CurrentStepCount             string                       `json:"currentStepCount,omitempty"`
	TotalNumOfSteps              string                       `json:"totalNumOfSteps,omitempty"`
	CurrentStepMessage           string                       `json:"currentStepMessage,omitempty"`
	CustomImage                  string                       `json:"customImage,omitempty"`
	OriginalDeploymentID         string                       `json:"originalDeploymentId,omitempty"`
	CurrentBatchCount            string                       `json:"currentBatchCount,omitempty"`
	TotalBatchCount              string                       `json:"totalBatchCount,omitempty"`
	Brownfield                   bool                         `json:"brownfield,omitempty"`
	ScaleUp                      bool                         `json:"scaleUp,omitempty"`
	LifecycleMode                bool                         `json:"lifecycleMode,omitempty"`
	OverallDeviceHealth          string                       `json:"overallDeviceHealth,omitempty"`
	Vds                          bool                         `json:"vds,omitempty"`
	TemplateValid                bool                         `json:"templateValid,omitempty"`
	ConfigurationChange          bool                         `json:"configurationChange,omitempty"`
	CanMigratevCLSVMs            bool                         `json:"canMigratevCLSVMs,omitempty"`
}
type DetailLink struct {
	Title string `json:"title"`
	Href  string `json:"href"`
	Rel   string `json:"rel"`
}

DetailLink defines struct for links

type Device

type Device struct {
	FglNvdimmMetadataAmortizationX100 int                     `json:"fglNvdimmMetadataAmortizationX100,omitempty"`
	LogicalSectorSizeInBytes          int                     `json:"logicalSectorSizeInBytes,omitempty"`
	FglNvdimmWriteCacheSize           int                     `json:"fglNvdimmWriteCacheSize,omitempty"`
	AccelerationPoolID                string                  `json:"accelerationPoolId,omitempty"`
	RfcacheProps                      RfcachePropsParams      `json:"rfcacheProps,omitempty"`
	SdsID                             string                  `json:"sdsId"`
	StoragePoolID                     string                  `json:"storagePoolId"`
	CapacityLimitInKb                 int                     `json:"capacityLimitInKb,omitempty"`
	ErrorState                        string                  `json:"errorState,omitempty"`
	Capacity                          int                     `json:"capacity,omitempty"`
	DeviceType                        string                  `json:"deviceType,omitempty"`
	PersistentChecksumState           string                  `json:"persistentChecksumState,omitempty"`
	DeviceState                       string                  `json:"deviceState,omitempty"`
	LedSetting                        string                  `json:"ledSetting,omitempty"`
	MaxCapacityInKb                   int                     `json:"maxCapacityInKb,omitempty"`
	SpSdsID                           string                  `json:"spSdsId,omitempty"`
	LongSuccessfulIos                 LongSuccessfulIosParams `json:"longSuccessfulIos,omitempty"`
	AggregatedState                   string                  `json:"aggregatedState,omitempty"`
	TemperatureState                  string                  `json:"temperatureState,omitempty"`
	SsdEndOfLifeState                 string                  `json:"ssdEndOfLifeState,omitempty"`
	ModelName                         string                  `json:"modelName,omitempty"`
	VendorName                        string                  `json:"vendorName,omitempty"`
	RaidControllerSerialNumber        string                  `json:"raidControllerSerialNumber,omitempty"`
	FirmwareVersion                   string                  `json:"firmwareVersion,omitempty"`
	CacheLookAheadActive              bool                    `json:"cacheLookAheadActive,omitempty"`
	WriteCacheActive                  bool                    `json:"writeCacheActive,omitempty"`
	AtaSecurityActive                 bool                    `json:"ataSecurityActive,omitempty"`
	PhysicalSectorSizeInBytes         int                     `json:"physicalSectorSizeInBytes,omitempty"`
	MediaFailing                      bool                    `json:"mediaFailing,omitempty"`
	SlotNumber                        string                  `json:"slotNumber,omitempty"`
	ExternalAccelerationType          string                  `json:"externalAccelerationType,omitempty"`
	AutoDetectMediaType               string                  `json:"autoDetectMediaType,omitempty"`
	StorageProps                      StoragePropsParams      `json:"storageProps,omitempty"`
	AccelerationProps                 AccelerationPropsParams `json:"accelerationProps,omitempty"`
	DeviceCurrentPathName             string                  `json:"deviceCurrentPathName"`
	DeviceOriginalPathName            string                  `json:"deviceOriginalPathName,omitempty"`
	RfcacheErrorDeviceDoesNotExist    bool                    `json:"rfcacheErrorDeviceDoesNotExist,omitempty"`
	MediaType                         string                  `json:"mediaType,omitempty"`
	SerialNumber                      string                  `json:"serialNumber,omitempty"`
	Name                              string                  `json:"name,omitempty"`
	ID                                string                  `json:"id,omitempty"`
	Links                             []*Link                 `json:"links"`
}

Device defines struct of Device for PowerFlex Array

type DeviceGroup added in v1.14.0

type DeviceGroup struct {
	GroupSeqID       int           `json:"groupSeqId"`
	GroupName        string        `json:"groupName"`
	GroupDescription string        `json:"groupDescription"`
	CreatedDate      string        `json:"createdDate"`
	CreatedBy        string        `json:"createdBy"`
	UpdatedDate      string        `json:"updatedDate"`
	UpdatedBy        string        `json:"updatedBy"`
	GroupUserList    GroupUserList `json:"groupUserList"`
}

DeviceGroup defines struct for nodepool

type DeviceGroupList added in v1.14.0

type DeviceGroupList struct {
	DeviceGroup    []DeviceGroup `json:"deviceGroup"`
	ManagedDevices []NodeDetails `json:"managedDevices"`
}

DeviceGroupList defines struct for devices

type DeviceInfo

type DeviceInfo struct {
	DevicePath    string `json:"devicePath"`
	StoragePoolID string `json:"storagePoolId"`
	DeviceName    string `json:"deviceName,omitempty"`
}

DeviceInfo defines struct for DeviceInfo

type DeviceParam

type DeviceParam struct {
	Name                     string `json:"name,omitempty"`
	DeviceCurrentPathname    string `json:"deviceCurrentPathname"`
	CapacityLimitInKb        int    `json:"capacityLimitInKb,omitempty"`
	StoragePoolID            string `json:"storagePoolId"`
	SdsID                    string `json:"sdsId"`
	TestTimeSecs             int    `json:"testTimeSecs,omitempty"`
	TestMode                 string `json:"testMode,omitempty"`
	MediaType                string `json:"mediaType,omitempty"`
	ExternalAccelerationType string `json:"externalAccelerationType,omitempty"`
}

DeviceParam defines struct for DeviceParam

type DeviceResp

type DeviceResp struct {
	ID string `json:"id"`
}

DeviceResp defines struct for DeviceParam

type DeviceWindowType added in v1.11.0

type DeviceWindowType struct {
	Threshold            int `json:"threshold,omitempty"`
	WindowSizeInSec      int `json:"windowSizeInSec,omitempty"`
	LastOscillationCount int `json:"lastOscillationCount,omitempty"`
	LastOscillationTime  int `json:"lastOscillationTime,omitempty"`
	MaxFailuresCount     int `json:"maxFailuresCount,omitempty"`
}

DeviceWindowType defines struct for LongSuccessfulIosParams

type Devices added in v1.12.0

type Devices struct {
	DevicePath      string `json:"devicePath,omitempty"`
	StoragePool     string `json:"storagePool,omitempty"`
	DeviceName      string `json:"deviceName,omitempty"`
	MaxCapacityInKb int    `json:"maxCapacityInKb,omitempty"`
}

Devices defines struct for Device Details

type DiskList added in v1.14.0

type DiskList struct {
	ID                     string `json:"id,omitempty"`
	Name                   string `json:"name,omitempty"`
	ErrorState             string `json:"errorState,omitempty"`
	SdsID                  string `json:"sdsId,omitempty"`
	DeviceState            string `json:"deviceState,omitempty"`
	CapacityLimitInKb      int    `json:"capacityLimitInKb,omitempty"`
	MaxCapacityInKb        int    `json:"maxCapacityInKb,omitempty"`
	StoragePoolID          string `json:"storagePoolId,omitempty"`
	DeviceCurrentPathName  string `json:"deviceCurrentPathName,omitempty"`
	DeviceOriginalPathName string `json:"deviceOriginalPathName,omitempty"`
	SerialNumber           string `json:"serialNumber,omitempty"`
	VendorName             string `json:"vendorName,omitempty"`
	ModelName              string `json:"modelName,omitempty"`
}

type EmptyPayload added in v1.3.0

type EmptyPayload struct {
}

EmptyPayload defines struct for EmptyPayload

type Error

type Error struct {
	Message        string                `json:"message"`
	HTTPStatusCode int                   `json:"httpStatusCode"`
	ErrorCode      int                   `json:"errorCode"`
	ErrorDetails   []ErrorMessageDetails `json:"details"`
}

Error struct defines the structure of an error

func (Error) Error

func (e Error) Error() string

type ErrorMessageDetails

type ErrorMessageDetails struct {
	Error        string `json:"error"`
	ReturnCode   int    `json:"rc"`
	ErrorMessage string `json:"errorMessage"`
}

ErrorMessageDetails defines contents of an error msg

type ExternalVirtualDisks added in v1.14.0

type ExternalVirtualDisks struct {
	PhysicalDisks         []string             `json:"physicalDisks,omitempty"`
	VirtualDiskFqdd       string               `json:"virtualDiskFqdd,omitempty"`
	RaidLevel             string               `json:"raidLevel,omitempty"`
	RollUpStatus          string               `json:"rollUpStatus,omitempty"`
	Controller            string               `json:"controller,omitempty"`
	ControllerProductName string               `json:"controllerProductName,omitempty"`
	Configuration         ConfigurationDetails `json:"configuration,omitempty"`
	MediaType             string               `json:"mediaType,omitempty"`
	EncryptionType        string               `json:"encryptionType,omitempty"`
}

type FSModify added in v1.12.0

type FSModify struct {
	Size             int    `json:"size_total,omitempty"`
	Description      string `json:"description,omitempty"`
	IsQuotaEnabled   bool   `json:"is_quota_enabled,omitempty"`
	GracePeriod      int    `json:"grace_period,omitempty"`
	DefaultHardLimit int    `json:"default_hard_limit,omitempty"`
	DefaultSoftLimit int    `json:"default_soft_limit,omitempty"`
}

FSModify defines struct for modify FS

type FaultSet added in v1.13.0

type FaultSet struct {
	ID                 string  `json:"id"`
	Name               string  `json:"name"`
	ProtectionDomainId string  `json:"protectionDomainId"`
	Links              []*Link `json:"links"`
}

FaultSet defines struct for reading the fault set

type FaultSetParam added in v1.13.0

type FaultSetParam struct {
	ProtectionDomainID string `json:"protectionDomainId"`
	Name               string `json:"name"`
}

FaultSetParam is the parameters required to create a fault set

type FaultSetRename added in v1.13.0

type FaultSetRename struct {
	NewName string `json:"newName"`
}

FaultSetRename defines struct for renaming the fault set

type FaultSetResp added in v1.13.0

type FaultSetResp struct {
	ID string `json:"id"`
}

FaultSetResp defines struct for the response when fault set is created successfully

type FaultSetSettings added in v1.14.0

type FaultSetSettings struct {
	ProtectionDomainID string `json:"protectionDomainId,omitempty"`
	Name               string `json:"name,omitempty"`
	ID                 string `json:"id,omitempty"`
}

type FileInterface added in v1.11.0

type FileInterface struct {
	// Unique id of the file interface
	ID string `json:"id"`
	// Ip address of file interface
	IPAddress string `json:"ip_address"`
}

FileInterface defines struct for FileInterface.

type FileSystem added in v1.11.0

type FileSystem struct {
	ID                         string `json:"id"`
	Name                       string `json:"name"`
	Description                string `json:"description"`
	StoragePoolID              string `json:"storage_pool_id"`
	NasServerID                string `json:"nas_server_id"`
	ParentID                   string `json:"parent_id"`
	StorageWwn                 string `json:"storage_wwn"`
	ExportFsID                 string `json:"export_fsid"`
	Type                       string `json:"type"`
	SizeTotal                  int    `json:"size_total"`
	SizeUsed                   int    `json:"size_used"`
	IsReadOnly                 bool   `json:"is_read_only"`
	ProtectionPolicyID         string `json:"protection_policy_id"`
	AccessPolicy               string `json:"access_policy"`
	LockingPolicy              string `json:"locking_policy"`
	FolderRenamePolicy         string `json:"folder_rename_policy"`
	IsSmbSyncWritesEnabled     bool   `json:"is_smb_sync_writes_enabled"`
	IsSmbOpLocksEnabled        bool   `json:"is_smb_op_locks_enabled"`
	IsSmbNoNotifyEnabled       bool   `json:"is_smb_no_notify_enabled"`
	IsSmbNotifyOnAccessEnabled bool   `json:"is_smb_notify_on_access_enabled"`
	IsSmbNotifyOnWriteEnabled  bool   `json:"is_smb_notify_on_write_enabled"`
	SmbNotifyOnChangeDirDepth  int    `json:"smb_notify_on_change_dir_depth"`
	IsAsyncMTimeEnabled        bool   `json:"is_async_MTime_enabled"`
	IsFlrEnabled               bool   `json:"is_flr_enabled"`
	IsQuotaEnabled             bool   `json:"is_quota_enabled"`
	GracePeriod                int    `json:"grace_period"`
	DefaultHardLimit           int    `json:"default_hard_limit"`
	DefaultSoftLimit           int    `json:"default_soft_limit"`
	CreationTimestamp          string `json:"creation_timestamp"`
	ExpirationTimestamp        string `json:"expiration_timestamp"`
	LastRefreshTimestamp       string `json:"last_refresh_timestamp"`
	LastWritableTimestamp      string `json:"last_writable_timestamp"`
	IsModified                 bool   `json:"is_modified"`
	AccessType                 string `json:"access_type"`
	CreatorType                string `json:"creator_type"`
}

FileSystem defines struct for PowerFlex FileSystem

type FileSystemResp added in v1.11.0

type FileSystemResp struct {
	ID string `json:"id"`
}

FileSystemResp defines struct for FileSystemResp

type FirmwareRepository added in v1.14.0

type FirmwareRepository struct {
	ID                      string               `json:"id,omitempty"`
	Name                    string               `json:"name,omitempty"`
	SourceLocation          string               `json:"sourceLocation,omitempty"`
	SourceType              string               `json:"sourceType,omitempty"`
	DiskLocation            string               `json:"diskLocation,omitempty"`
	Filename                string               `json:"filename,omitempty"`
	Md5Hash                 string               `json:"md5Hash,omitempty"`
	Username                string               `json:"username,omitempty"`
	Password                string               `json:"password,omitempty"`
	DownloadStatus          string               `json:"downloadStatus,omitempty"`
	CreatedDate             string               `json:"createdDate,omitempty"`
	CreatedBy               string               `json:"createdBy,omitempty"`
	UpdatedDate             string               `json:"updatedDate,omitempty"`
	UpdatedBy               string               `json:"updatedBy,omitempty"`
	DefaultCatalog          bool                 `json:"defaultCatalog,omitempty"`
	Embedded                bool                 `json:"embedded,omitempty"`
	State                   string               `json:"state,omitempty"`
	SoftwareComponents      []SoftwareComponents `json:"softwareComponents,omitempty"`
	SoftwareBundles         []SoftwareBundles    `json:"softwareBundles,omitempty"`
	Deployments             []Deployments        `json:"deployments,omitempty"`
	BundleCount             int                  `json:"bundleCount,omitempty"`
	ComponentCount          int                  `json:"componentCount,omitempty"`
	UserBundleCount         int                  `json:"userBundleCount,omitempty"`
	Minimal                 bool                 `json:"minimal,omitempty"`
	DownloadProgress        int                  `json:"downloadProgress,omitempty"`
	ExtractProgress         int                  `json:"extractProgress,omitempty"`
	FileSizeInGigabytes     int                  `json:"fileSizeInGigabytes,omitempty"`
	SignedKeySourceLocation string               `json:"signedKeySourceLocation,omitempty"`
	Signature               string               `json:"signature,omitempty"`
	Custom                  bool                 `json:"custom,omitempty"`
	NeedsAttention          bool                 `json:"needsAttention,omitempty"`
	JobID                   string               `json:"jobId,omitempty"`
	Rcmapproved             bool                 `json:"rcmapproved,omitempty"`
}

type FragmentationParam added in v1.11.0

type FragmentationParam struct {
}

FragmentationParam defines struct for fragmentation

type FsCreate added in v1.11.0

type FsCreate struct {
	Name                       string `json:"name"`
	Description                string `json:"description,omitempty"`
	SizeTotal                  int    `json:"size_total"`
	StoragePoolID              string `json:"storage_pool_id"`
	NasServerID                string `json:"nas_server_id"`
	IsReadOnly                 bool   `json:"is_read_only,omitempty"`
	AccessPolicy               string `json:"access_policy,omitempty"`
	LockingPolicy              string `json:"locking_policy,omitempty"`
	FolderRenamePolicy         string `json:"folder_rename_policy,omitempty"`
	IsSmbSyncWritesEnabled     bool   `json:"is_smb_sync_writes_enabled,omitempty"`
	IsSmbNoNotifyEnabled       bool   `json:"is_smb_no_notify_enabled,omitempty"`
	IsSmbOpLocksEnabled        bool   `json:"is_smb_op_locks_enabled,omitempty"`
	IsSmbNotifyOnAccessEnabled bool   `json:"is_smb_notify_on_access_enabled,omitempty"`
	IsSmbNotifyOnWriteEnabled  bool   `json:"is_smb_notify_on_write_enabled,omitempty"`
	SmbNotifyOnChangeDirDepth  int    `json:"smb_notify_on_change_dir_depth,omitempty"`
	IsAsyncMTimeEnabled        bool   `json:"is_async_MTime_enabled,omitempty"`
}

FsCreate defines struct for creating a PowerFlex FileSystem

type GatewayResponse added in v1.11.0

type GatewayResponse struct {
	Message        string             `json:"message,omitempty"`
	Data           string             `json:"data,omitempty"`
	ClusterDetails MDMTopologyDetails `json:"clusterDetails,omitempty"`
	StatusCode     int                `json:"httpStatusCode,omitempty"`
	ErrorCode      int                `json:"errorCode,omitempty"`
}

GatewayResponse defines struct for Gateway API Response

type General added in v1.14.0

type General struct {
	ID                                                  string                                              `json:"id,omitempty"`
	Name                                                string                                              `json:"name,omitempty"`
	SystemID                                            string                                              `json:"systemId,omitempty"`
	ProtectionDomainState                               string                                              `json:"protectionDomainState,omitempty"`
	RebuildNetworkThrottlingInKbps                      int                                                 `json:"rebuildNetworkThrottlingInKbps,omitempty"`
	RebalanceNetworkThrottlingInKbps                    int                                                 `json:"rebalanceNetworkThrottlingInKbps,omitempty"`
	OverallIoNetworkThrottlingInKbps                    int                                                 `json:"overallIoNetworkThrottlingInKbps,omitempty"`
	SdsDecoupledCounterParameters                       SdsDecoupledCounterParameters                       `json:"sdsDecoupledCounterParameters,omitempty"`
	SdsConfigurationFailureCounterParameters            SdsConfigurationFailureCounterParameters            `json:"sdsConfigurationFailureCounterParameters,omitempty"`
	MdmSdsCounterParameters                             MdmSdsCounterParameters                             `json:"mdmSdsCounterParameters,omitempty"`
	SdsSdsCounterParameters                             SdsSdsCounterParameters                             `json:"sdsSdsCounterParameters,omitempty"`
	RfcacheOpertionalMode                               string                                              `json:"rfcacheOpertionalMode,omitempty"`
	RfcachePageSizeKb                                   int                                                 `json:"rfcachePageSizeKb,omitempty"`
	RfcacheMaxIoSizeKb                                  int                                                 `json:"rfcacheMaxIoSizeKb,omitempty"`
	SdsReceiveBufferAllocationFailuresCounterParameters SdsReceiveBufferAllocationFailuresCounterParameters `json:"sdsReceiveBufferAllocationFailuresCounterParameters,omitempty"`
	RebuildNetworkThrottlingEnabled                     bool                                                `json:"rebuildNetworkThrottlingEnabled,omitempty"`
	RebalanceNetworkThrottlingEnabled                   bool                                                `json:"rebalanceNetworkThrottlingEnabled,omitempty"`
	OverallIoNetworkThrottlingEnabled                   bool                                                `json:"overallIoNetworkThrottlingEnabled,omitempty"`
	RfcacheEnabled                                      bool                                                `json:"rfcacheEnabled,omitempty"`
}

type GetSdcIDByIPParam added in v1.12.0

type GetSdcIDByIPParam struct {
	IP string `json:"ip,omitempty"`
}

GetSdcIDByIPParam defines struct for SDC ID to get by IP

type GroupUserList added in v1.14.0

type GroupUserList struct {
	TotalRecords int          `json:"totalRecords"`
	GroupUsers   []GroupUsers `json:"groupUsers"`
}

GroupUserList defines struct for group users

type GroupUsers added in v1.14.0

type GroupUsers struct {
	UserSeqID string `json:"userSeqId"`
	UserName  string `json:"userName"`
	FirstName string `json:"firstName"`
	LastName  string `json:"lastName"`
	Role      string `json:"role"`
	Enabled   bool   `json:"enabled"`
}

GroupUsers defines struct for group user

type IPList added in v1.14.0

type IPList struct {
	IP   string `json:"ip,omitempty"`
	Role string `json:"role,omitempty"`
}

type IPRange added in v1.14.0

type IPRange struct {
	ID         string `json:"id,omitempty"`
	StartingIP string `json:"startingIp,omitempty"`
	EndingIP   string `json:"endingIp,omitempty"`
	Role       string `json:"role,omitempty"`
}

type InstallerPhaseDetail added in v1.11.0

type InstallerPhaseDetail struct {
	Phase                    PhaseDetails `json:"phase,omitempty"`
	NextPhase                PhaseDetails `json:"nextPhase,omitempty"`
	Operation                string       `json:"operation,omitempty"`
	UpgradePersistenceRecord any          `json:"upgradePersistenceRecord,omitempty"`
	RollbackEnabled          bool         `json:"rollbackEnabled,omitempty"`
	Message                  string       `json:"message,omitempty"`
	StatusCode               int          `json:"httpStatusCode,omitempty"`
	ErrorCode                int          `json:"errorCode,omitempty"`
}

InstallerPhaseDetail defines struct for Current and Next Phase Details

type Interfaces added in v1.14.0

type Interfaces struct {
	ID            string       `json:"id,omitempty"`
	Name          string       `json:"name,omitempty"`
	Partitioned   bool         `json:"partitioned,omitempty"`
	Partitions    []Partitions `json:"partitions,omitempty"`
	Enabled       bool         `json:"enabled,omitempty"`
	Redundancy    bool         `json:"redundancy,omitempty"`
	Nictype       string       `json:"nictype,omitempty"`
	Fqdd          string       `json:"fqdd,omitempty"`
	MaxPartitions int          `json:"maxPartitions,omitempty"`
	AllNetworks   []string     `json:"allNetworks,omitempty"`
}

type InterfacesDetails added in v1.14.0

type InterfacesDetails struct {
	ID            string       `json:"id,omitempty"`
	Name          string       `json:"name,omitempty"`
	Redundancy    bool         `json:"redundancy,omitempty"`
	Enabled       bool         `json:"enabled,omitempty"`
	Partitioned   bool         `json:"partitioned,omitempty"`
	Interfaces    []Interfaces `json:"interfaces,omitempty"`
	Nictype       string       `json:"nictype,omitempty"`
	Fabrictype    string       `json:"fabrictype,omitempty"`
	MaxPartitions int          `json:"maxPartitions,omitempty"`
	Nports        int          `json:"nports,omitempty"`
	CardIndex     int          `json:"card_index,omitempty"`
	NictypeSource string       `json:"nictypeSource,omitempty"`
}

type JobDetails added in v1.14.0

type JobDetails struct {
	Level       string `json:"level,omitempty"`
	Message     string `json:"message,omitempty"`
	Timestamp   string `json:"timestamp,omitempty"`
	ExecutionID string `json:"executionId,omitempty"`
	ComponentID string `json:"componentId,omitempty"`
}

type LicenseRepository added in v1.14.0

type LicenseRepository struct {
	ID           string `json:"id,omitempty"`
	Name         string `json:"name,omitempty"`
	Type         string `json:"type,omitempty"`
	DiskLocation string `json:"diskLocation,omitempty"`
	Filename     string `json:"filename,omitempty"`
	State        string `json:"state,omitempty"`
	CreatedDate  string `json:"createdDate,omitempty"`
	CreatedBy    string `json:"createdBy,omitempty"`
	UpdatedDate  string `json:"updatedDate,omitempty"`
	UpdatedBy    string `json:"updatedBy,omitempty"`
	Templates    []any  `json:"templates,omitempty"`
	LicenseData  string `json:"licenseData,omitempty"`
}
type Link struct {
	Rel   string `json:"rel"`
	HREF  string `json:"href"`
	Title string `json:"title,omitempty"`
	Type  string `json:"type,omitempty"`
}

Link defines struct of Link

type LongSuccessfulIosParams added in v1.11.0

type LongSuccessfulIosParams struct {
	ShortWindow  DeviceWindowType `json:"shortWindow,omitempty"`
	MediumWindow DeviceWindowType `json:"mediumWindow,omitempty"`
	LongWindow   DeviceWindowType `json:"longWindow,omitempty"`
}

LongSuccessfulIosParams defines struct for Device

type LongWindow added in v1.14.0

type LongWindow struct {
	Threshold       int `json:"threshold,omitempty"`
	WindowSizeInSec int `json:"windowSizeInSec,omitempty"`
}

type MDMQueueCommandDetails added in v1.11.0

type MDMQueueCommandDetails struct {
	CommandName            string    `json:"commandName,omitempty"`
	MdmIPs                 []string  `json:"mdmIPs,omitempty"`
	CommandState           string    `json:"commandState,omitempty"`
	StartTime              time.Time `json:"startTime,omitempty"`
	CompletionTime         time.Time `json:"completionTime,omitempty"`
	Message                string    `json:"message,omitempty"`
	NodeIPs                []string  `json:"nodeIPs,omitempty"`
	CommandParameters      []string  `json:"commandParameters,omitempty"`
	TargetEntityIdentifier string    `json:"targetEntityIdentifier,omitempty"`
	AllowedPhase           string    `json:"allowedPhase,omitempty"`
}

MDMQueueCommandDetails defines struct for In Queue command details

type MDMTopologyDetails added in v1.11.0

type MDMTopologyDetails struct {
	MdmIPs            []string            `json:"mdmIPs,omitempty"`
	SdsAndMdmIps      []string            `json:"sdsAndMdmIps,omitempty"`
	SdcIps            []string            `json:"sdcIps,omitempty"`
	VirtualIPs        []string            `json:"virtualIps,omitempty"`
	SystemVersionName string              `json:"systemVersionName,omitempty"`
	SdsList           []SdsList           `json:"sdsList,omitempty"`
	SdcList           []SdcList           `json:"sdcList,omitempty"`
	ProtectionDomains []ProtectionDomains `json:"protectionDomains,omitempty"`
	SdrList           []SdrList           `json:"sdrList,omitempty"`
	VasaProviderList  []any               `json:"vasaProviderList,omitempty"`
	MasterMdm         MasterMdm           `json:"masterMdm,omitempty"`
	SlaveMdmSet       []SlaveMdmSet       `json:"slaveMdmSet,omitempty"`
	TbSet             []TbSet             `json:"tbSet,omitempty"`
	StandbyMdmSet     []StandbyMdmSet     `json:"standbyMdmSet,omitempty"`
	StandbyTbSet      []StandbyTbSet      `json:"standbyTbSet,omitempty"`
}

MDMTopologyDetails defines struct for Validated MDM Topology Details

type MDMTopologyParam added in v1.11.0

type MDMTopologyParam struct {
	MdmIps                []string                     `json:"mdmIps"`
	MdmUser               string                       `json:"mdmUser"`
	MdmPassword           string                       `json:"mdmPassword"`
	SecurityConfiguration SecurityConfigurationDetails `json:"securityConfiguration"`
}

MDMTopologyParam defines struct for Validate MDM Topology

type ManagedDeviceList added in v1.14.0

type ManagedDeviceList struct {
	ManagedDevices []NodeDetails `json:"managedDevices"`
}

ManagedDeviceList defines struct for managed devices

type MapVolumeSdcParam

type MapVolumeSdcParam struct {
	SdcID                 string `json:"sdcId,omitempty"`
	AllowMultipleMappings string `json:"allowMultipleMappings,omitempty"`
	AllSdcs               string `json:"allSdcs,omitempty"`
	AccessMode            string `json:"accessMode,omitempty"`
}

MapVolumeSdcParam defines struct for MapVolumeSdcParam

type MappedSdcInfo

type MappedSdcInfo struct {
	SdcID                 string `json:"sdcId"`
	SdcIP                 string `json:"sdcIp"`
	LimitIops             int    `json:"limitIops"`
	LimitBwInMbps         int    `json:"limitBwInMbps"`
	SdcName               string `json:"sdcName"`
	AccessMode            string `json:"accessMode"`
	IsDirectBufferMapping bool   `json:"isDirectBufferMapping"`
}

MappedSdcInfo defines struct for MappedSdcInfo

type MappedSdcInfoDetails added in v1.14.0

type MappedSdcInfoDetails struct {
	SdcIP         string `json:"sdcIp,omitempty"`
	SdcID         string `json:"sdcId,omitempty"`
	LimitBwInMbps int    `json:"limitBwInMbps,omitempty"`
	LimitIops     int    `json:"limitIops,omitempty"`
}

type MasterMdm added in v1.12.0

type MasterMdm struct {
	Node            Node     `json:"node,omitempty"`
	MdmIPs          []string `json:"mdmIPs,omitempty"`
	Name            string   `json:"name,omitempty"`
	ID              string   `json:"id,omitempty"`
	IPForActor      any      `json:"ipForActor,omitempty"`
	ManagementIPs   []string `json:"managementIPs,omitempty"`
	VirtIPIntfsList []string `json:"virtIpIntfsList,omitempty"`
}

MasterMdm defines struct for Mster MDM Details

type Mdm added in v1.12.0

type Mdm struct {
	ID                string   `json:"id"`
	Name              string   `json:"name"`
	Port              int      `json:"port"`
	IPs               []string `json:"ips"`
	ManagementIPs     []string `json:"managementIPs"`
	Role              string   `json:"role"`
	Status            string   `json:"status"`
	VirtualInterfaces []string `json:"virtualInterfaces"`
	VersionInfo       string   `json:"versionInfo"`
	OpenSslVersion    string   `json:"opensslVersion"`
}

Mdm defines struct for a MDM

type MdmCluster added in v1.12.0

type MdmCluster struct {
	ID              string `json:"id"`
	ClusterState    string `json:"clusterState"`
	ClusterMode     string `json:"clusterMode"`
	GoodNodesNum    int    `json:"goodNodesNum"`
	GoodReplicasNum int    `json:"goodReplicasNum"`
	PrimaryMDM      Mdm    `json:"master"`
	SecondaryMDM    []Mdm  `json:"slaves"`
	TiebreakerMdm   []Mdm  `json:"tieBreakers"`
	StandByMdm      []Mdm  `json:"standbyMDMs"`
}

MdmCluster defines struct for MDM cluster

type MdmSdsCounterParameters added in v1.14.0

type MdmSdsCounterParameters struct {
	ShortWindow  ShortWindow  `json:"shortWindow,omitempty"`
	MediumWindow MediumWindow `json:"mediumWindow,omitempty"`
	LongWindow   LongWindow   `json:"longWindow,omitempty"`
}

type MediumWindow added in v1.14.0

type MediumWindow struct {
	Threshold       int `json:"threshold,omitempty"`
	WindowSizeInSec int `json:"windowSizeInSec,omitempty"`
}

type Messages added in v1.14.0

type Messages struct {
	ID              string `json:"id,omitempty"`
	MessageCode     string `json:"messageCode,omitempty"`
	MessageBundle   string `json:"messageBundle,omitempty"`
	Severity        string `json:"severity,omitempty"`
	Category        string `json:"category,omitempty"`
	DisplayMessage  string `json:"displayMessage,omitempty"`
	ResponseAction  string `json:"responseAction,omitempty"`
	DetailedMessage string `json:"detailedMessage,omitempty"`
	CorrelationID   string `json:"correlationId,omitempty"`
	AgentID         string `json:"agentId,omitempty"`
	TimeStamp       string `json:"timeStamp,omitempty"`
	SequenceNumber  int    `json:"sequenceNumber,omitempty"`
}

type ModifyStoragePoolName added in v1.10.0

type ModifyStoragePoolName struct {
	Name string `json:"name"`
}

ModifyStoragePoolName defines struct for ModifyStoragePoolName

type NAS added in v1.11.0

type NAS struct {
	ID                              string                         `json:"id,omitempty"`
	Description                     string                         `json:"description,omitempty"`
	Name                            string                         `json:"name,omitempty"`
	ProtectionDomainID              string                         `json:"protection_domain_id,omitempty"`
	StoragePoolID                   string                         `json:"storage_pool_id,omitempty"`
	PrimaryNodeID                   string                         `json:"primary_node_id,omitempty"`
	BackUpNodeID                    string                         `json:"backup_node_id,omitempty"`
	OperationalStatus               NASServerOperationalStatusEnum `json:"operational_status,omitempty"`
	CurrentPreferredIPv4InterfaceID string                         `json:"current_preferred_IPv4_interface_id"`
	NfsServers                      []NFSServerInstance            `json:"nfs_servers"`
	CurrentNodeID                   string                         `json:"current_node_id,omitempty"`
	DefaultUnixUser                 string                         `json:"default_unix_user,omitempty"`
	DefaultWindowsUser              string                         `json:"default_windows_user,omitempty"`
	CurrentUnixDirectoryService     string                         `json:"current_unix_directory_service,omitempty"`
	IsUsernameTranslationEnabled    bool                           `json:"is_username_translation_enabled,omitempty"`
	IsAutoUserMappingEnabled        bool                           `json:"is_auto_user_mapping_enabled,omitempty"`
	ProductionIPv4InterfaceID       string                         `json:"production_IPv4_interface_id,omitempty"`
	ProductionIPv6InterfaceID       string                         `json:"production_IPv6_interface_id,omitempty"`
	BackupIPv4InterfaceID           string                         `json:"backup_IPv4_interface_id,omitempty"`
	BackupIPv6InterfaceID           string                         `json:"backup_IPv6_interface_id,omitempty"`
	CurrentPreferredIPv6InterfaceID string                         `json:"current_preferred_IPv6_interface_id,omitempty"`
	OperationalStatusl10n           string                         `json:"operational_status_l10n,omitempty"`
	CurrentUnixDirectoryServicel10n string                         `json:"current_unix_directory_service_l10n,omitempty"`
}

NAS defines struct for NAS.

type NASServerOperationalStatusEnum added in v1.11.0

type NASServerOperationalStatusEnum string

NASServerOperationalStatusEnum NAS lifecycle state.

const (
	Stopped  NASServerOperationalStatusEnum = "Stopped"
	Starting NASServerOperationalStatusEnum = "Starting"
	Started  NASServerOperationalStatusEnum = "Started"
	Stopping NASServerOperationalStatusEnum = "Stopping"
	Failover NASServerOperationalStatusEnum = "Failover"
	Degraded NASServerOperationalStatusEnum = "Degraded"
	Unknown  NASServerOperationalStatusEnum = "Unknown"
)

operational status of NAS

type NFSExport added in v1.11.0

type NFSExport struct {
	ID                 string                     `json:"id,omitempty"`
	FileSystemID       string                     `json:"file_system_id,omitempty"`
	Name               string                     `json:"name,omitempty"`
	Description        string                     `json:"description,omitempty"`
	DefaultAccess      NFSExportDefaultAccessEnum `json:"default_access,omitempty"`
	Path               string                     `json:"path,omitempty"`
	ReadWriteHosts     []string                   `json:"read_write_hosts,omitempty"`
	ReadOnlyHosts      []string                   `json:"read_only_hosts,omitempty"`
	ReadWriteRootHosts []string                   `json:"read_write_root_hosts,omitempty"`
	ReadOnlyRootHosts  []string                   `json:"read_only_root_hosts,omitempty"`
}

NFSExport defines the struct for NFSExport

type NFSExportCreate added in v1.11.0

type NFSExportCreate struct {
	Name               string   `json:"name"`
	FileSystemID       string   `json:"file_system_id"`
	Path               string   `json:"path"`
	NoAccessHosts      []string `json:"no_access_hosts,omitempty"`
	ReadOnlyHosts      []string `json:"read_only_hosts,omitempty"`
	ReadWriteHosts     []string `json:"read_write_hosts,omitempty"`
	ReadOnlyRootHosts  []string `json:"read_only_root_hosts,omitempty"`
	ReadWriteRootHosts []string `json:"read_write_root_hosts,omitempty"`
	AnonymousUID       int      `json:"anonymous_UID,omitempty"`
	AnonymousGID       int      `json:"anonymous_GID,omitempty"`
	IsNoSUID           bool     `json:"is_no_SUID,omitempty"`
}

NFSExportCreate defines struct for Create NFS Export

type NFSExportCreateResponse added in v1.11.0

type NFSExportCreateResponse struct {
	ID string `json:"id"`
}

NFSExportCreateResponse defines struct for response

type NFSExportDefaultAccessEnum added in v1.11.0

type NFSExportDefaultAccessEnum string

NFSExportDefaultAccessEnum defines default access

const (
	NoAccess     NFSExportDefaultAccessEnum = "No_Access"
	ReadOnly     NFSExportDefaultAccessEnum = "Read_Only"
	ReadWrite    NFSExportDefaultAccessEnum = "Read_Write"
	Root         NFSExportDefaultAccessEnum = "Root"
	ReadOnlyRoot NFSExportDefaultAccessEnum = "Read_Only_Root "
)

Default access const

type NFSExportModify added in v1.11.0

type NFSExportModify struct {
	Description              string   `json:"description,omitempty"`
	DefaultAccess            string   `json:"default_access,omitempty"`
	NoAccessHosts            []string `json:"no_access_hosts,omitempty"`
	AddNoAccessHosts         []string `json:"add_no_access_hosts,omitempty"`
	RemoveNoAccessHosts      []string `json:"remove_no_access_hosts,omitempty"`
	ReadOnlyHosts            []string `json:"read_only_hosts,omitempty"`
	AddReadOnlyHosts         []string `json:"add_read_only_hosts,omitempty"`
	RemoveReadOnlyHosts      []string `json:"remove_read_only_hosts,omitempty"`
	ReadOnlyRootHosts        []string `json:"read_only_root_hosts,omitempty"`
	AddReadOnlyRootHosts     []string `json:"add_read_only_root_hosts,omitempty"`
	RemoveReadOnlyRootHosts  []string `json:"remove_read_only_root_hosts,omitempty"`
	ReadWriteHosts           []string `json:"read_write_hosts,omitempty"`
	AddReadWriteHosts        []string `json:"add_read_write_hosts,omitempty"`
	RemoveReadWriteHosts     []string `json:"remove_read_write_hosts,omitempty"`
	ReadWriteRootHosts       []string `json:"read_write_root_hosts,omitempty"`
	AddReadWriteRootHosts    []string `json:"add_read_write_root_hosts,omitempty"`
	RemoveReadWriteRootHosts []string `json:"remove_read_write_root_hosts,omitempty"`
}

NFSExportModify defines struct for Modify NFS Export

type NFSServerInstance added in v1.11.0

type NFSServerInstance struct {
	// Unique identifier for NFS server
	ID string `json:"id"`
	//HostName will be used by NFS clients to connect to this NFS server.
	HostName string `json:"host_name,omitempty"`
	// IsNFSv4Enabled is set to true if nfsv4 is enabled on NAS server
	IsNFSv4Enabled bool `json:"is_nfsv4_enabled,omitempty"`
	// IsNFSv4Enabled is set to true if nfsv4 is enabled on NAS server
	IsNFSv3Enabled bool `json:"is_nfsv3_enabled,omitempty"`
}

NFSServerInstance in NAS server

type NetworkConfiguration added in v1.14.0

type NetworkConfiguration struct {
	ID           string              `json:"id,omitempty"`
	Interfaces   []InterfacesDetails `json:"interfaces,omitempty"`
	SoftwareOnly bool                `json:"softwareOnly,omitempty"`
}

type NetworkIPAddressList added in v1.14.0

type NetworkIPAddressList struct {
	ID        string `json:"id,omitempty"`
	IPAddress string `json:"ipAddress,omitempty"`
}

type Networks added in v1.14.0

type Networks struct {
	ID                         string                     `json:"id,omitempty"`
	Name                       string                     `json:"name,omitempty"`
	Description                string                     `json:"description,omitempty"`
	VlanID                     int                        `json:"vlanId,omitempty"`
	StaticNetworkConfiguration StaticNetworkConfiguration `json:"staticNetworkConfiguration,omitempty"`
	DestinationIPAddress       string                     `json:"destinationIpAddress,omitempty"`
	Static                     bool                       `json:"static,omitempty"`
	Type                       string                     `json:"type,omitempty"`
}

type Node added in v1.12.0

type Node struct {
	Ostype   string   `json:"ostype,omitempty"`
	NodeName string   `json:"nodeName,omitempty"`
	NodeIPs  []string `json:"nodeIPs,omitempty"`
}

Node defines struct for Node Information

type NodeDetails added in v1.14.0

type NodeDetails struct {
	RefID               string          `json:"refId"`
	IPAddress           string          `json:"ipAddress"`
	CurrentIPAddress    string          `json:"currentIpAddress"`
	ServiceTag          string          `json:"serviceTag"`
	Model               string          `json:"model"`
	DeviceType          string          `json:"deviceType"`
	DiscoverDeviceType  string          `json:"discoverDeviceType"`
	DisplayName         string          `json:"displayName"`
	ManagedState        string          `json:"managedState"`
	State               string          `json:"state"`
	InUse               bool            `json:"inUse"`
	CustomFirmware      bool            `json:"customFirmware"`
	NeedsAttention      bool            `json:"needsAttention"`
	Manufacturer        string          `json:"manufacturer"`
	SystemID            string          `json:"systemId"`
	Health              string          `json:"health"`
	HealthMessage       string          `json:"healthMessage"`
	OperatingSystem     string          `json:"operatingSystem"`
	NumberOfCPUs        int             `json:"numberOfCPUs"`
	Nics                int             `json:"nics"`
	MemoryInGB          int             `json:"memoryInGB"`
	ComplianceCheckDate string          `json:"complianceCheckDate"`
	DiscoveredDate      string          `json:"discoveredDate"`
	DeviceGroupList     DeviceGroupList `json:"deviceGroupList"`
	DetailLink          DetailLink      `json:"detailLink"`
	CredID              string          `json:"credId"`
	Compliance          string          `json:"compliance"`
	FailuresCount       int             `json:"failuresCount"`
	Facts               string          `json:"facts"`
	PuppetCertName      string          `json:"puppetCertName"`
	FlexosMaintMode     int             `json:"flexosMaintMode"`
	EsxiMaintMode       int             `json:"esxiMaintMode"`
}

NodeDetails defines struct for Node

type NodePoolDetails added in v1.14.0

type NodePoolDetails struct {
	DeviceGroup       DeviceGroup       `json:"deviceGroup"`
	ManagedDeviceList ManagedDeviceList `json:"managedDeviceList"`
	GroupUserList     GroupUserList     `json:"groupUserList"`
}

NodePoolDetails defines struct for nodepools

type NodePoolDetailsFilter added in v1.14.0

type NodePoolDetailsFilter struct {
	NodePoolDetails []DeviceGroup `json:"deviceGroup"`
}

NodePoolDetailsFilter defines struct for nodepools

type NodeSelection added in v1.14.0

type NodeSelection struct {
	ID            string `json:"id,omitempty"`
	ServiceTag    string `json:"serviceTag,omitempty"`
	MgmtIPAddress string `json:"mgmtIpAddress,omitempty"`
}

type Options added in v1.14.0

type Options struct {
	ID           string                `json:"id,omitempty"`
	Name         string                `json:"name,omitempty"`
	Dependencies []DependenciesDetails `json:"dependencies,omitempty"`
	Attributes   map[string]string     `json:"attributes,omitempty"`
}

type OptionsDetails added in v1.14.0

type OptionsDetails struct {
	ID           string                `json:"id,omitempty"`
	Name         string                `json:"name,omitempty"`
	Value        string                `json:"value,omitempty"`
	Dependencies []DependenciesDetails `json:"dependencies,omitempty"`
	Attributes   map[string]string     `json:"attributes,omitempty"`
}

type PDConnInfo added in v1.10.0

type PDConnInfo struct {
	ClientServerConnStatus string  `json:"clientServerConnStatus"`
	DisconnectedClientID   *string `json:"disconnectedClientId"`
	DisconnectedClientName *string `json:"disconnectedClientName"`
	DisconnectedServerID   *string `json:"disconnectedServerId"`
	DisconnectedServerName *string `json:"disconnectedServerName"`
	DisconnectedServerIP   *string `json:"disconnectedServerIp"`
}

PDConnInfo defines Protection Domain Connection information

type PDCounterParams added in v1.10.0

type PDCounterParams struct {
	ShortWindow  PDCounterWindow `json:"shortWindow"`
	MediumWindow PDCounterWindow `json:"mediumWindow"`
	LongWindow   PDCounterWindow `json:"longWindow"`
}

PDCounterParams defines all the windows for a Protection Domain Failure Counter

type PDCounterWindow added in v1.10.0

type PDCounterWindow struct {
	Threshold       int `json:"threshold"`
	WindowSizeInSec int `json:"windowSizeInSec"`
}

PDCounterWindow defines one window for a Protection Domain Failure Counter

type PDRfCacheOpMode added in v1.10.0

type PDRfCacheOpMode string

PDRfCacheOpMode is an enum type for Protection Domain Rf Cache Operational Mode

const (
	PDRCModeRead         PDRfCacheOpMode = "Read"
	PDRCModeWrite        PDRfCacheOpMode = "Write"
	PDRCModeReadAndWrite PDRfCacheOpMode = "ReadAndWrite"
	PDRCModeWriteMiss    PDRfCacheOpMode = "WriteMiss"
)

Available values for enum type PDRfCacheOpMode

type PDRfCacheParams added in v1.11.0

type PDRfCacheParams struct {
	RfCacheOperationalMode PDRfCacheOpMode
	RfCachePageSizeKb      int
	RfCacheMaxIoSizeKb     int
}

PDRfCacheParams is used to manipulate Read Flash Cache settings of a protection domain

func (PDRfCacheParams) MarshalJSON added in v1.11.0

func (params PDRfCacheParams) MarshalJSON() ([]byte, error)

MarshalJSON implements a custom json marshalling

type PackageDetails added in v1.11.0

type PackageDetails struct {
	Filename        string `json:"filename"`
	OperatingSystem string `json:"operatingSystem"`
	LinuxFlavour    string `json:"linuxFlavour"`
	Version         string `json:"version"`
	SioPatchNumber  int    `json:"sioPatchNumber"`
	Label           string `json:"label"`
	Type            string `json:"type"`
	Size            int    `json:"size"`
	Latest          bool   `json:"latest"`
}

PackageDetails defines struct for Package Details Response

type Parameters added in v1.14.0

type Parameters struct {
	ID               string                `json:"id,omitempty"`
	Value            string                `json:"value,omitempty"`
	DisplayName      string                `json:"displayName,omitempty"`
	Type             string                `json:"type,omitempty"`
	ToolTip          string                `json:"toolTip,omitempty"`
	Required         bool                  `json:"required,omitempty"`
	HideFromTemplate bool                  `json:"hideFromTemplate,omitempty"`
	DeviceType       string                `json:"deviceType,omitempty"`
	Dependencies     []DependenciesDetails `json:"dependencies,omitempty"`
	Group            string                `json:"group,omitempty"`
	ReadOnly         bool                  `json:"readOnly,omitempty"`
	Generated        bool                  `json:"generated,omitempty"`
	InfoIcon         bool                  `json:"infoIcon,omitempty"`
	Step             int                   `json:"step,omitempty"`
	MaxLength        int                   `json:"maxLength,omitempty"`
	Min              int                   `json:"min,omitempty"`
	Max              int                   `json:"max,omitempty"`
	Networks         []Networks            `json:"networks,omitempty"`
	Options          []Options             `json:"options,omitempty"`
	OptionsSortable  bool                  `json:"optionsSortable,omitempty"`
}

type ParametersDetails added in v1.14.0

type ParametersDetails struct {
	GUID                     string                     `json:"guid,omitempty"`
	ID                       string                     `json:"id,omitempty"`
	Type                     string                     `json:"type,omitempty"`
	DisplayName              string                     `json:"displayName,omitempty"`
	Value                    string                     `json:"value,omitempty"`
	ToolTip                  string                     `json:"toolTip,omitempty"`
	Required                 bool                       `json:"required,omitempty"`
	RequiredAtDeployment     bool                       `json:"requiredAtDeployment,omitempty"`
	HideFromTemplate         bool                       `json:"hideFromTemplate,omitempty"`
	Dependencies             []DependenciesDetails      `json:"dependencies,omitempty"`
	Group                    string                     `json:"group,omitempty"`
	ReadOnly                 bool                       `json:"readOnly,omitempty"`
	Generated                bool                       `json:"generated,omitempty"`
	InfoIcon                 bool                       `json:"infoIcon,omitempty"`
	Step                     int                        `json:"step,omitempty"`
	MaxLength                int                        `json:"maxLength,omitempty"`
	Min                      int                        `json:"min,omitempty"`
	Max                      int                        `json:"max,omitempty"`
	NetworkIPAddressList     []NetworkIPAddressList     `json:"networkIpAddressList,omitempty"`
	NetworkConfiguration     NetworkConfiguration       `json:"networkConfiguration,omitempty"`
	RaidConfiguration        RaidConfiguration          `json:"raidConfiguration,omitempty"`
	Options                  []OptionsDetails           `json:"options,omitempty"`
	OptionsSortable          bool                       `json:"optionsSortable,omitempty"`
	PreservedForDeployment   bool                       `json:"preservedForDeployment,omitempty"`
	ScaleIODiskConfiguration ScaleIODiskConfiguration   `json:"scaleIODiskConfiguration,omitempty"`
	ProtectionDomainSettings []ProtectionDomainSettings `json:"protectionDomainSettings,omitempty"`
	FaultSetSettings         []FaultSetSettings         `json:"faultSetSettings,omitempty"`
	Attributes               map[string]string          `json:"attributes,omitempty"`
	VdsConfiguration         VdsConfiguration           `json:"vdsConfiguration,omitempty"`
	NodeSelection            NodeSelection              `json:"nodeSelection,omitempty"`
}

type Partitions added in v1.14.0

type Partitions struct {
	ID                   string                 `json:"id,omitempty"`
	Name                 string                 `json:"name,omitempty"`
	Networks             []string               `json:"networks,omitempty"`
	NetworkIPAddressList []NetworkIPAddressList `json:"networkIpAddressList,omitempty"`
	Minimum              int                    `json:"minimum,omitempty"`
	Maximum              int                    `json:"maximum,omitempty"`
	LanMacAddress        string                 `json:"lanMacAddress,omitempty"`
	IscsiMacAddress      string                 `json:"iscsiMacAddress,omitempty"`
	IscsiIQN             string                 `json:"iscsiIQN,omitempty"`
	Wwnn                 string                 `json:"wwnn,omitempty"`
	Wwpn                 string                 `json:"wwpn,omitempty"`
	Fqdd                 string                 `json:"fqdd,omitempty"`
	MirroredPort         string                 `json:"mirroredPort,omitempty"`
	MacAddress           string                 `json:"mac_address,omitempty"`
	PortNo               int                    `json:"port_no,omitempty"`
	PartitionNo          int                    `json:"partition_no,omitempty"`
	PartitionIndex       int                    `json:"partition_index,omitempty"`
}

type PauseMode added in v1.10.0

type PauseMode string

PauseMode states in which the ConsistencyGroup can be set to when Paused.

const (
	StopDataTransfer PauseMode = "StopDataTransfer"
	OnlyTrackChanges PauseMode = "OnlyTrackChanges"
)

List of pause modes.

type PauseReplicationConsistencyGroup added in v1.10.0

type PauseReplicationConsistencyGroup struct {
	PauseMode string `json:"pauseMode"`
}

PauseReplicationConsistencyGroup defines struct for PauseReplicationConsistencyGroup.

type PeerMDM added in v1.10.0

type PeerMDM struct {
	ID                  string     `json:"id"`
	Name                string     `json:"name"`
	Port                int        `json:"port"`
	PeerSystemID        string     `json:"peerSystemId"`
	SystemID            string     `json:"systemId"`
	SoftwareVersionInfo string     `json:"softwareVersionInfo"`
	MembershipState     string     `json:"membershipState"`
	PerfProfile         string     `json:"perfProfile"`
	NetworkType         string     `json:"networkType"`
	CouplingRC          string     `json:"couplingRC"`
	IPList              []*PeerMDM `json:"ipList"`
}

PeerMDM defines a replication peer system.

type Permission added in v1.14.0

type Permission struct {
	Role   string  `json:"role"`
	Scopes []Scope `json:"scopes"`
}

Permission represents a permission that can be granted to an SSO user.

type PhaseDetails added in v1.11.0

type PhaseDetails struct {
	Name            string `json:"name,omitempty"`
	PreludeMessage  any    `json:"preludeMessage,omitempty"`
	PrologueMessage any    `json:"prologueMessage,omitempty"`
	AutoStart       bool   `json:"autoStart,omitempty"`
}

PhaseDetails defines struct for specific phase details

type PortGroupOptions added in v1.14.0

type PortGroupOptions struct {
	ID   string `json:"id,omitempty"`
	Name string `json:"name,omitempty"`
}

type PortGroups added in v1.14.0

type PortGroups struct {
	ID               string             `json:"id,omitempty"`
	DisplayName      string             `json:"displayName,omitempty"`
	Vlan             int                `json:"vlan,omitempty"`
	Name             string             `json:"name,omitempty"`
	Value            string             `json:"value,omitempty"`
	PortGroupOptions []PortGroupOptions `json:"portGroupOptions,omitempty"`
}

type ProtectedMaintenanceModeParam added in v1.11.0

type ProtectedMaintenanceModeParam struct {
	Policy                      string `json:"policy"`
	NumOfConcurrentIosPerDevice string `json:"numOfConcurrentIosPerDevice,omitempty"`
	BwLimitPerDeviceInKbps      string `json:"bwLimitPerDeviceInKbps,omitempty"`
}

ProtectedMaintenanceModeParam defines struct for Protected Maintenance Mode

type ProtectionDomain

type ProtectionDomain struct {
	SystemID                    string     `json:"systemId"`
	SdrSdsConnectivityInfo      PDConnInfo `json:"sdrSdsConnectivityInfo"`
	ReplicationCapacityMaxRatio *int       `json:"replicationCapacityMaxRatio"`

	// SDS Network throttling params
	RebuildNetworkThrottlingInKbps                   int  `json:"rebuildNetworkThrottlingInKbps"`
	RebalanceNetworkThrottlingInKbps                 int  `json:"rebalanceNetworkThrottlingInKbps"`
	OverallIoNetworkThrottlingInKbps                 int  `json:"overallIoNetworkThrottlingInKbps"`
	VTreeMigrationNetworkThrottlingInKbps            int  `json:"vtreeMigrationNetworkThrottlingInKbps"`
	ProtectedMaintenanceModeNetworkThrottlingInKbps  int  `json:"protectedMaintenanceModeNetworkThrottlingInKbps"`
	OverallIoNetworkThrottlingEnabled                bool `json:"overallIoNetworkThrottlingEnabled"`
	RebuildNetworkThrottlingEnabled                  bool `json:"rebuildNetworkThrottlingEnabled"`
	RebalanceNetworkThrottlingEnabled                bool `json:"rebalanceNetworkThrottlingEnabled"`
	VTreeMigrationNetworkThrottlingEnabled           bool `json:"vtreeMigrationNetworkThrottlingEnabled"`
	ProtectedMaintenanceModeNetworkThrottlingEnabled bool `json:"protectedMaintenanceModeNetworkThrottlingEnabled"`

	// Fine Granularity Params
	FglDefaultNumConcurrentWrites int  `json:"fglDefaultNumConcurrentWrites"`
	FglMetadataCacheEnabled       bool `json:"fglMetadataCacheEnabled"`
	FglDefaultMetadataCacheSize   int  `json:"fglDefaultMetadataCacheSize"`

	// RfCache Params
	RfCacheEnabled         bool            `json:"rfcacheEnabled"`
	RfCacheAccpID          string          `json:"rfcacheAccpId"`
	RfCacheOperationalMode PDRfCacheOpMode `json:"rfcacheOpertionalMode"`
	RfCachePageSizeKb      int             `json:"rfcachePageSizeKb"`
	RfCacheMaxIoSizeKb     int             `json:"rfcacheMaxIoSizeKb"`

	// Counter Params
	SdsConfigurationFailureCP            PDCounterParams `json:"sdsConfigurationFailureCounter"`
	SdsDecoupledCP                       PDCounterParams `json:"sdsDecoupledCounterParameters"`
	MdmSdsNetworkDisconnectionsCP        PDCounterParams `json:"mdmSdsNetworkDisconnectionsCounterParameters"`
	SdsSdsNetworkDisconnectionsCP        PDCounterParams `json:"sdsSdsNetworkDisconnectionsCounterParameters"`
	SdsReceiveBufferAllocationFailuresCP PDCounterParams `json:"sdsReceiveBufferAllocationFailuresCounterParameters"`

	ProtectionDomainState string  `json:"protectionDomainState"`
	Name                  string  `json:"name"`
	ID                    string  `json:"id"`
	Links                 []*Link `json:"links"`
}

ProtectionDomain defines struct for PowerFlex ProtectionDomain

func (*ProtectionDomain) GetNwLimitParams added in v1.11.0

func (pd *ProtectionDomain) GetNwLimitParams() SdsNetworkLimitParams

GetNwLimitParams is a function to extract IOPS limit params from a protection domain

func (*ProtectionDomain) GetRfCacheParams added in v1.11.0

func (pd *ProtectionDomain) GetRfCacheParams() PDRfCacheParams

GetRfCacheParams is a function to extract RF cache params from a protection domain

type ProtectionDomainParam

type ProtectionDomainParam struct {
	Name string `json:"name"`
}

ProtectionDomainParam defines struct for ProtectionDomainParam

type ProtectionDomainResp

type ProtectionDomainResp struct {
	ID string `json:"id"`
}

ProtectionDomainResp defines struct for ProtectionDomainResp

type ProtectionDomainSettings added in v1.14.0

type ProtectionDomainSettings struct {
	General          General            `json:"general,omitempty"`
	Statistics       StatisticsDetails  `json:"statistics,omitempty"`
	StoragePoolList  []StoragePoolList  `json:"storage_pool_list,omitempty"`
	SdsList          []SdsListDetails   `json:"sds_list,omitempty"`
	SdrList          []SdrListDetails   `json:"sdr_list,omitempty"`
	AccelerationPool []AccelerationPool `json:"acceleration_pool,omitempty"`
}

type ProtectionDomains added in v1.12.0

type ProtectionDomains struct {
	Name              string         `json:"name,omitempty"`
	StoragePools      []StoragePools `json:"storagePools,omitempty"`
	AccelerationPools []any          `json:"accelerationPools,omitempty"`
}

ProtectionDomains defines struct for ProtectionDomains Details

type QueryReplicationPair added in v1.10.0

type QueryReplicationPair struct {
	Name                          string `json:"name"`
	SourceVolumeID                string `json:"sourceVolumeId"`
	DestinationVolumeID           string `json:"destinationVolumeId"`
	ReplicationConsistencyGroupID string `json:"replicationConsistencyGroupId"`
	CopyType                      string `json:"copyType"`
}

QueryReplicationPair used for querying replication pair.

type QueryReplicationPairStatistics added in v1.10.0

type QueryReplicationPairStatistics struct {
	InitialCopyProgress float64 `json:"initialCopyProgress"`
}

QueryReplicationPairStatistics used for querying the statistics of a replication pair.

type QuerySyncNowRequest added in v1.10.0

type QuerySyncNowRequest struct {
	SyncNowKey string `json:"syncNowKey"`
}

QuerySyncNowRequest defines struct for QuerySyncNowRequest.

type QuerySystemLimitsParam added in v1.13.0

type QuerySystemLimitsParam struct {
}

type QuerySystemLimitsResponse added in v1.13.0

type QuerySystemLimitsResponse struct {
	SystemLimitEntryList []SystemLimits `json:"systemLimitEntryList"`
}

SystemLimitEntryList defines struct for system limit entryList

type RaidConfiguration added in v1.14.0

type RaidConfiguration struct {
	VirtualDisks         []VirtualDisks         `json:"virtualDisks,omitempty"`
	ExternalVirtualDisks []ExternalVirtualDisks `json:"externalVirtualDisks,omitempty"`
	HddHotSpares         []string               `json:"hddHotSpares,omitempty"`
	SsdHotSpares         []string               `json:"ssdHotSpares,omitempty"`
	ExternalHddHotSpares []string               `json:"externalHddHotSpares,omitempty"`
	ExternalSsdHotSpares []string               `json:"externalSsdHotSpares,omitempty"`
	SizeToDiskMap        map[string]int         `json:"sizeToDiskMap,omitempty"`
}

type RaidControllers added in v1.10.0

type RaidControllers struct {
	SerialNumber    string `json:"serialNumber,omitempty"`
	ModelName       string `json:"modelName,omitempty"`
	VendorName      string `json:"vendorName,omitempty"`
	FirmwareVersion string `json:"firmwareVersion,omitempty"`
	DriverVersion   string `json:"driverVersion,omitempty"`
	DriverName      string `json:"driverName,omitempty"`
	PciAddress      string `json:"pciAddress,omitempty"`
	Status          string `json:"status,omitempty"`
	BatteryStatus   string `json:"batteryStatus,omitempty"`
}

RaidControllers defines struct for raid controllers

type RebalanceEnabledParam added in v1.11.0

type RebalanceEnabledParam struct {
	RebalanceEnabled string `json:"rebalanceEnabled"`
}

RebalanceEnabledParam defines struct for Rebalance Enablement

type RebuildEnabledParam added in v1.11.0

type RebuildEnabledParam struct {
	RebuildEnabled string `json:"rebuildEnabled"`
}

RebuildEnabledParam defines struct for Rebuild Enablement

type RebuildRebalanceParallelismParam added in v1.11.0

type RebuildRebalanceParallelismParam struct {
	Limit string `json:"limit"`
}

RebuildRebalanceParallelismParam defines struct for Rebuild Rebalance Parallelism

type RemoveReplicationConsistencyGroupParam added in v1.10.0

type RemoveReplicationConsistencyGroupParam struct {
	ForceIgnoreConsistency string `json:"forceIgnoreConsistency,omitempty"`
}

RemoveReplicationConsistencyGroupParam defines struct for RemoveReplicationConsistencyGroupParam.

type RemoveReplicationPair added in v1.10.0

type RemoveReplicationPair struct {
	Force string `json:"force,omitempty"`
}

RemoveReplicationPair defines struct for RemoveReplicationPair

type RemoveStandByMdmParam added in v1.12.0

type RemoveStandByMdmParam struct {
	ID string `json:"id"`
}

RemoveStandByMdmParam defines struct for removing standby MDM

type RemoveVolumeParam

type RemoveVolumeParam struct {
	RemoveMode string `json:"removeMode"`
}

RemoveVolumeParam defines struct for RemoveVolumeParam

type RenameMdm added in v1.12.0

type RenameMdm struct {
	ID      string `json:"id"`
	NewName string `json:"newName"`
}

RenameMdm defines struct for modifying MDM name

type RenameSdcParam added in v1.10.0

type RenameSdcParam struct {
	SdcName string `json:"sdcName,omitempty"`
}

RenameSdcParam defines struct for RenameSdc

type ReplicationConsistencyGroup added in v1.10.0

type ReplicationConsistencyGroup struct {
	ID                       string `json:"id,omitempty"`
	Name                     string `json:"name"`
	RpoInSeconds             int    `json:"rpoInSeconds"`
	ProtectionDomainID       string `json:"protectionDomainId"`
	RemoteProtectionDomainID string `json:"remoteProtectionDomainId"`
	DestinationSystemID      string `json:"destinationSystemId,omitempty"`
	PeerMdmID                string `json:"peerMdmId,omitempty"`

	RemoteID                    string `json:"remoteId,omitempty"`
	RemoteMdmID                 string `json:"remoteMdmId,omitempty"`
	ReplicationDirection        string `json:"replicationDirection,omitempty"`
	CurrConsistMode             string `json:"currConsistMode,omitempty"`
	FreezeState                 string `json:"freezeState,omitempty"`
	PauseMode                   string `json:"pauseMode,omitempty"`
	LifetimeState               string `json:"lifetimeState,omitempty"`
	SnapCreationInProgress      bool   `json:"snapCreationInProgress,omitempty"`
	LastSnapGroupID             string `json:"lastSnapGroupId,omitempty"`
	Type                        string `json:"type,omitempty"`
	DisasterRecoveryState       string `json:"disasterRecoveryState,omitempty"`
	RemoteDisasterRecoveryState string `json:"remoteDisasterRecoveryState,omitempty"`
	TargetVolumeAccessMode      string `json:"targetVolumeAccessMode,omitempty"`
	FailoverType                string `json:"failoverType,omitempty"`
	FailoverState               string `json:"failoverState,omitempty"`
	ActiveLocal                 bool   `json:"activeLocal,omitempty"`
	ActiveRemote                bool   `json:"activeRemote,omitempty"`
	AbstractState               string `json:"abstractState,omitempty"`
	Error                       int    `json:"error,omitempty"`
	LocalActivityState          string `json:"localActivityState,omitempty"`
	RemoteActivityState         string `json:"remoteActivityState,omitempty"`
	InactiveReason              int    `json:"inactiveReason,omitempty"`

	Links []*Link `json:"links"`
}

ReplicationConsistencyGroup (RCG) has information about a replication session

type ReplicationConsistencyGroupCreatePayload added in v1.10.0

type ReplicationConsistencyGroupCreatePayload struct {
	Name                     string `json:"name"`
	RpoInSeconds             string `json:"rpoInSeconds"` // note this field different
	ProtectionDomainID       string `json:"protectionDomainId"`
	RemoteProtectionDomainID string `json:"remoteProtectionDomainId"`
	DestinationSystemID      string `json:"destinationSystemId,omitempty"`
	PeerMdmID                string `json:"peerMdmId,omitempty"`
}

ReplicationConsistencyGroupCreatePayload works around a problem where the RpoInSeconds must be enclosed in quotes when creating an RCG, but is treated as an integer when it is returned. This is a bug in the PowerFlex REST implementation. This information was obtained from Bubis, Zeev <Zeev.Bubis@dell.com>.

type ReplicationConsistencyGroupResp added in v1.10.0

type ReplicationConsistencyGroupResp struct {
	ID string `json:"id"`
}

ReplicationConsistencyGroupResp response from adding ReplicationConsistencyGroup.

type ReplicationJournalCapacityParam added in v1.11.0

type ReplicationJournalCapacityParam struct {
	ReplicationJournalCapacityMaxRatio string `json:"replicationJournalCapacityMaxRatio"`
}

ReplicationJournalCapacityParam defines struct for Replication Journal Capacity

type ReplicationPair added in v1.10.0

type ReplicationPair struct {
	ID                                 string `json:"id"`
	Name                               string `json:"name"`
	RemoteID                           string `json:"remoteId"`
	UserRequestedPauseTransmitInitCopy bool   `json:"userRequestedPauseTransmitInitCopy"`
	RemoteCapacityInMB                 int    `json:"remoteCapacityInMB"`
	LocalVolumeID                      string `json:"localVolumeId"`
	RemoteVolumeID                     string `json:"remoteVolumeId"`
	RemoteVolumeName                   string `json:"remoteVolumeName"`
	ReplicationConsistencyGroupID      string `json:"replicationConsistencyGroupId"`
	CopyType                           string `json:"copyType"`
	LifetimeState                      string `json:"lifetimeState"`
	PeerSystemName                     string `json:"peerSystemName"`
	InitialCopyState                   string `json:"initialCopyState"`
	InitialCopyPriority                int    `json:"initialCopyPriority"`
}

ReplicationPair represents a pair of volumes in a replication relationship.

type Resources added in v1.14.0

type Resources struct {
	GUID          string              `json:"guid,omitempty"`
	ID            string              `json:"id,omitempty"`
	DisplayName   string              `json:"displayName,omitempty"`
	Parameters    []ParametersDetails `json:"parameters,omitempty"`
	ParametersMap map[string]string   `json:"parametersMap,omitempty"`
}

type RestoreFsSnapParam added in v1.12.0

type RestoreFsSnapParam struct {
	SnapshotID string `json:"snapshot_id"`
	CopyName   string `json:"copy_name,omitempty"`
}

RestoreFsSnapParam defines struct for Restoring filesytem from snapshot

type RestoreFsSnapResponse added in v1.12.0

type RestoreFsSnapResponse struct {
	ID string `json:"id"`
}

RestoreFsSnapResponse defines struct for Restore Filesystem snapshot response

type RfcachePropsParams added in v1.11.0

type RfcachePropsParams struct {
	DeviceUUID                     string `json:"deviceUuid,omitempty"`
	RfcacheErrorStuckIO            bool   `json:"rfcacheErrorStuckIo,omitempty"`
	RfcacheErrorHeavyLoadCacheSkip bool   `json:"rfcacheErrorHeavyLoadCacheSkip,omitempty"`
	RfcacheErrorCardIoError        bool   `json:"rfcacheErrorCardIoError,omitempty"`
}

RfcachePropsParams defines struct for Device

type RmcacheWriteHandlingModeParam added in v1.11.0

type RmcacheWriteHandlingModeParam struct {
	RmcacheWriteHandlingMode string `json:"rmcacheWriteHandlingMode"`
}

RmcacheWriteHandlingModeParam defines struct for Rmcache Write Handling Mode

type SSOUserCreateParam added in v1.14.0

type SSOUserCreateParam struct {
	UserName  string `json:"username"`
	Role      string `json:"role"`
	Password  string `json:"password"`
	Type      string `json:"type"`
	IsEnabled bool   `json:"is_enabled,omitempty"`
}

SSOUserCreateParam represents the parameters for creating an SSO user.

type SSOUserDetails added in v1.14.0

type SSOUserDetails struct {
	ID               string     `json:"id"`
	Username         string     `json:"username"`
	CreatedTimestamp string     `json:"created_timestamp"`
	IsEnabled        bool       `json:"is_enabled"`
	FirstName        string     `json:"first_name"`
	LastName         string     `json:"last_name"`
	EmailAddress     string     `json:"email_address"`
	IsBuiltin        bool       `json:"is_builtin"`
	Type             string     `json:"type"`
	Permission       Permission `json:"permission"`
}

SSOUserDetails represents the details of an SSO user.

type SSOUserList added in v1.14.0

type SSOUserList struct {
	SSOUsers []SSOUserDetails `json:"users"`
}

SSOUserList represents the details of an SSO users.

type SSOUserModifyParam added in v1.14.0

type SSOUserModifyParam struct {
	UserName  string `json:"username,omitempty"`
	Role      string `json:"role,omitempty"`
	Password  string `json:"password,omitempty"`
	IsEnabled bool   `json:"is_enabled,omitempty"`
}

SSOUserModifyParam represents the parameters for modifying an SSO user.

type ScaleIODiskConfiguration added in v1.14.0

type ScaleIODiskConfiguration struct {
	ScaleIOStoragePoolDisks []ScaleIOStoragePoolDisks `json:"scaleIOStoragePoolDisks,omitempty"`
}

type ScaleIOStoragePoolDisks added in v1.14.0

type ScaleIOStoragePoolDisks struct {
	ProtectionDomainID   string   `json:"protectionDomainId,omitempty"`
	ProtectionDomainName string   `json:"protectionDomainName,omitempty"`
	StoragePoolID        string   `json:"storagePoolId,omitempty"`
	StoragePoolName      string   `json:"storagePoolName,omitempty"`
	DiskType             string   `json:"diskType,omitempty"`
	PhysicalDiskFqdds    []string `json:"physicalDiskFqdds,omitempty"`
	VirtualDiskFqdds     []string `json:"virtualDiskFqdds,omitempty"`
	SoftwareOnlyDisks    []string `json:"softwareOnlyDisks,omitempty"`
}

type Scope added in v1.14.0

type Scope struct {
	ScopeID   string `json:"scope_id"`
	ScopeType string `json:"scope_type"`
}

Scope represents a scope that can be granted to an SSO user.

type ScsiInitiator

type ScsiInitiator struct {
	Name     string  `json:"name"`
	IQN      string  `json:"iqn"`
	SystemID string  `json:"systemID"`
	Links    []*Link `json:"links"`
}

ScsiInitiator defines struct for ScsiInitiator

type Sdc

type Sdc struct {
	SystemID           string   `json:"systemId"`
	SdcApproved        bool     `json:"sdcApproved"`
	SdcIP              string   `json:"SdcIp"`
	SdcIPs             []string `json:"SdcIps"`
	OnVMWare           bool     `json:"onVmWare"`
	SdcGUID            string   `json:"sdcGuid"`
	MdmConnectionState string   `json:"mdmConnectionState"`
	Name               string   `json:"name"`
	PerfProfile        string   `json:"perfProfile"`
	OSType             string   `json:"osType"`
	ID                 string   `json:"id"`
	Links              []*Link  `json:"links"`
}

Sdc defines struct for PowerFlex Sdc

type SdcList added in v1.12.0

type SdcList struct {
	Node      Node   `json:"node,omitempty"`
	GUID      string `json:"guid,omitempty"`
	SdcName   string `json:"sdcName,omitempty"`
	Optimized bool   `json:"optimized,omitempty"`
	ID        string `json:"id,omitempty"`
}

SdcList defines struct for SDC Details

type SdcStatistics added in v1.2.0

type SdcStatistics struct {
	UserDataReadBwc         BWC      `json:"userDataReadBwc"`
	UserDataWriteBwc        BWC      `json:"userDataWriteBwc"`
	UserDataTrimBwc         BWC      `json:"userDataTrimBwc"`
	UserDataSdcReadLatency  BWC      `json:"userDataSdcReadLatency"`
	UserDataSdcWriteLatency BWC      `json:"userDataSdcWriteLatency"`
	UserDataSdcTrimLatency  BWC      `json:"userDataSdcTrimLatency"`
	VolumeIds               []string `json:"volumeIds"`
	NumOfMappedVolumes      int      `json:"numOfMappedVolumes"`
}

SdcStatistics defines struct of Statistics for PowerFlex SDC

type SdrList added in v1.12.0

type SdrList struct {
	Node                      Node     `json:"node,omitempty"`
	ProtectionDomain          string   `json:"protectionDomain,omitempty"`
	ProtectionDomainID        string   `json:"protectionDomainId,omitempty"`
	ApplicationOnlyIPs        []string `json:"applicationOnlyIPs,omitempty"`
	StorageOnlyIPs            []string `json:"storageOnlyIPs,omitempty"`
	ExternalOnlyIPs           []string `json:"externalOnlyIPs,omitempty"`
	ApplicationAndStorageIPs  []string `json:"applicationAndStorageIPs,omitempty"`
	ApplicationAndExternalIPs []string `json:"applicationAndExternalIPs,omitempty"`
	StorageAndExternalIPs     []string `json:"storageAndExternalIPs,omitempty"`
	AllIPs                    []string `json:"allIPs,omitempty"`
	SupersetIPs               any      `json:"supersetIPs,omitempty"`
	SdrName                   string   `json:"sdrName,omitempty"`
	SdrPort                   int      `json:"sdrPort,omitempty"`
	Optimized                 bool     `json:"optimized,omitempty"`
	ID                        string   `json:"id,omitempty"`
}

SdrList defines struct for SDR Details

type SdrListDetails added in v1.14.0

type SdrListDetails struct {
	ID                  string   `json:"id,omitempty"`
	Name                string   `json:"name,omitempty"`
	Port                int      `json:"port,omitempty"`
	ProtectionDomainID  string   `json:"protectionDomainId,omitempty"`
	SoftwareVersionInfo string   `json:"softwareVersionInfo,omitempty"`
	SdrState            string   `json:"sdrState,omitempty"`
	MembershipState     string   `json:"membershipState,omitempty"`
	MdmConnectionState  string   `json:"mdmConnectionState,omitempty"`
	MaintenanceState    string   `json:"maintenanceState,omitempty"`
	PerfProfile         string   `json:"perfProfile,omitempty"`
	IPList              []IPList `json:"ipList,omitempty"`
}

type Sds

type Sds struct {
	ID                                          string            `json:"id"`
	Name                                        string            `json:"name,omitempty"`
	ProtectionDomainID                          string            `json:"protectionDomainId"`
	IPList                                      []*SdsIP          `json:"ipList"`
	Port                                        int               `json:"port,omitempty"`
	SdsState                                    string            `json:"sdsState"`
	MembershipState                             string            `json:"membershipState"`
	MdmConnectionState                          string            `json:"mdmConnectionState"`
	DrlMode                                     string            `json:"drlMode,omitempty"`
	RmcacheEnabled                              bool              `json:"rmcacheEnabled,omitempty"`
	RmcacheSizeInKb                             int               `json:"rmcacheSizeInKb,omitempty"`
	RmcacheFrozen                               bool              `json:"rmcacheFrozen,omitempty"`
	IsOnVMware                                  bool              `json:"isOnVmWare,omitempty"`
	FaultSetID                                  string            `json:"faultSetId,omitempty"`
	NumOfIoBuffers                              int               `json:"numOfIoBuffers,omitempty"`
	RmcacheMemoryAllocationState                string            `json:"RmcacheMemoryAllocationState,omitempty"`
	PerformanceProfile                          string            `json:"perfProfile,omitempty"`
	SoftwareVersionInfo                         string            `json:"softwareVersionInfo,omitempty"`
	ConfiguredDrlMode                           string            `json:"configuredDrlMode,omitempty"`
	RfcacheEnabled                              bool              `json:"rfcacheEnabled,omitempty"`
	MaintenanceState                            string            `json:"maintenanceState,omitempty"`
	MaintenanceType                             string            `json:"maintenanceType,omitempty"`
	RfcacheErrorLowResources                    bool              `json:"rfcacheErrorLowResources,omitempty"`
	RfcacheErrorAPIVersionMismatch              bool              `json:"rfcacheErrorApiVersionMismatch,omitempty"`
	RfcacheErrorInconsistentCacheConfiguration  bool              `json:"rfcacheErrorInconsistentCacheConfiguration,omitempty"`
	RfcacheErrorInconsistentSourceConfiguration bool              `json:"rfcacheErrorInconsistentSourceConfiguration,omitempty"`
	RfcacheErrorInvalidDriverPath               bool              `json:"rfcacheErrorInvalidDriverPath,omitempty"`
	RfcacheErrorDeviceDoesNotExist              bool              `json:"rfcacheErrorDeviceDoesNotExist,omitempty"`
	AuthenticationError                         string            `json:"authenticationError,omitempty"`
	FglNumConcurrentWrites                      int               `json:"fglNumConcurrentWrites,omitempty"`
	FglMetadataCacheState                       string            `json:"fglMetadataCacheState,omitempty"`
	FglMetadataCacheSize                        int               `json:"fglMetadataCacheSize,omitempty"`
	NumRestarts                                 int               `json:"numRestarts,omitempty"`
	LastUpgradeTime                             int               `json:"lastUpgradeTime,omitempty"`
	SdsDecoupled                                SdsWindow         `json:"sdsDecoupled,omitempty"`
	SdsConfigurationFailure                     SdsWindow         `json:"sdsConfigurationFailure,omitempty"`
	SdsReceiveBufferAllocationFailures          SdsWindow         `json:"sdsReceiveBufferAllocationFailures,omitempty"`
	RaidControllers                             []RaidControllers `json:"raidControllers,omitempty"`
	CertificateInfo                             CertificateInfo   `json:"certificateInfo,omitempty"`
	Links                                       []*Link           `json:"links"`
}

Sds defines struct for Sds

type SdsConfigurationFailureCounterParameters added in v1.14.0

type SdsConfigurationFailureCounterParameters struct {
	ShortWindow  ShortWindow  `json:"shortWindow,omitempty"`
	MediumWindow MediumWindow `json:"mediumWindow,omitempty"`
	LongWindow   LongWindow   `json:"longWindow,omitempty"`
}

type SdsDecoupledCounterParameters added in v1.14.0

type SdsDecoupledCounterParameters struct {
	ShortWindow  ShortWindow  `json:"shortWindow,omitempty"`
	MediumWindow MediumWindow `json:"mediumWindow,omitempty"`
	LongWindow   LongWindow   `json:"longWindow,omitempty"`
}

type SdsIP added in v1.7.0

type SdsIP struct {
	IP   string `json:"ip"`
	Role string `json:"role,omitempty"`
}

SdsIP defines struct for SdsIP

type SdsIPList added in v1.7.0

type SdsIPList struct {
	SdsIP SdsIP `json:"SdsIp"`
}

SdsIPList defines struct for SdsIPList

type SdsIPRole added in v1.10.0

type SdsIPRole struct {
	SdsIPToSet string `json:"sdsIpToSet"`
	NewRole    string `json:"newRole"`
}

SdsIPRole defines struct for Sds IP and Role

type SdsList added in v1.12.0

type SdsList struct {
	Node                 Node      `json:"node,omitempty"`
	SdsName              string    `json:"sdsName,omitempty"`
	ProtectionDomain     string    `json:"protectionDomain,omitempty"`
	ProtectionDomainID   string    `json:"protectionDomainId,omitempty"`
	FaultSet             string    `json:"faultSet,omitempty"`
	FaultSetID           string    `json:"faultSetId,omitempty"`
	AllIPs               []string  `json:"allIPs,omitempty"`
	SdsOnlyIPs           []string  `json:"sdsOnlyIPs,omitempty"`
	SdcOnlyIPs           []string  `json:"sdcOnlyIPs,omitempty"`
	Devices              []Devices `json:"devices,omitempty"`
	RfCached             bool      `json:"rfCached,omitempty"`
	RfCachedPools        []any     `json:"rfCachedPools,omitempty"`
	RfCachedDevices      []any     `json:"rfCachedDevices,omitempty"`
	RfCacheType          any       `json:"rfCacheType,omitempty"`
	FlashAccDevices      []any     `json:"flashAccDevices,omitempty"`
	NvdimmAccDevices     []any     `json:"nvdimmAccDevices,omitempty"`
	UseRmCache           bool      `json:"useRmCache,omitempty"`
	Optimized            bool      `json:"optimized,omitempty"`
	OptimizedNumOfIOBufs int       `json:"optimizedNumOfIOBufs,omitempty"`
	Port                 int       `json:"port,omitempty"`
	ID                   string    `json:"id,omitempty"`
}

SdsList defines struct for SDS Details

type SdsListDetails added in v1.14.0

type SdsListDetails struct {
	ID                  string   `json:"id,omitempty"`
	Name                string   `json:"name,omitempty"`
	Port                int      `json:"port,omitempty"`
	ProtectionDomainID  string   `json:"protectionDomainId,omitempty"`
	FaultSetID          string   `json:"faultSetId,omitempty"`
	SoftwareVersionInfo string   `json:"softwareVersionInfo,omitempty"`
	SdsState            string   `json:"sdsState,omitempty"`
	MembershipState     string   `json:"membershipState,omitempty"`
	MdmConnectionState  string   `json:"mdmConnectionState,omitempty"`
	DrlMode             string   `json:"drlMode,omitempty"`
	MaintenanceState    string   `json:"maintenanceState,omitempty"`
	PerfProfile         string   `json:"perfProfile,omitempty"`
	OnVMWare            bool     `json:"onVmWare,omitempty"`
	IPList              []IPList `json:"ipList,omitempty"`
}

type SdsName added in v1.10.0

type SdsName struct {
	Name string `json:"name"`
}

SdsName defines struct for Sds Name

type SdsNetworkLimitParams added in v1.11.0

type SdsNetworkLimitParams struct {
	RebuildNetworkThrottlingInKbps                  *int
	RebalanceNetworkThrottlingInKbps                *int
	VTreeMigrationNetworkThrottlingInKbps           *int
	ProtectedMaintenanceModeNetworkThrottlingInKbps *int
	OverallIoNetworkThrottlingInKbps                *int
}

SdsNetworkLimitParams is used to set IOPS limits on all SDS of a protection domain

func (SdsNetworkLimitParams) MarshalJSON added in v1.11.0

func (params SdsNetworkLimitParams) MarshalJSON() ([]byte, error)

MarshalJSON implements a custom json marshalling

type SdsParam

type SdsParam struct {
	Name               string        `json:"name,omitempty"`
	IPList             []*SdsIPList  `json:"sdsIpList"`
	Port               string        `json:"sdsPort,omitempty"`
	DrlMode            string        `json:"drlMode,omitempty"`
	RmcacheEnabled     string        `json:"rmcacheEnabled,omitempty"`
	RmcacheSizeInKb    string        `json:"rmcacheSizeInKb,omitempty"`
	RmcacheFrozen      bool          `json:"rmcacheFrozen,omitempty"`
	ProtectionDomainID string        `json:"protectionDomainId"`
	FaultSetID         string        `json:"faultSetId,omitempty"`
	NumOfIoBuffers     string        `json:"numOfIoBuffers,omitempty"`
	DeviceInfoList     []*DeviceInfo `json:"deviceInfoList,omitempty"`
	ForceClean         bool          `json:"forceClean,omitempty"`
	DeviceTestTimeSecs int           `json:"deviceTestTimeSecs ,omitempty"`
	DeviceTestMode     string        `json:"deviceTestMode,omitempty"`
}

SdsParam defines struct for SdsParam

type SdsPort added in v1.10.0

type SdsPort struct {
	SdsPort string `json:"sdsPort"`
}

SdsPort defines struct for Sds Port

type SdsReceiveBufferAllocationFailuresCounterParameters added in v1.14.0

type SdsReceiveBufferAllocationFailuresCounterParameters struct {
	ShortWindow  ShortWindow  `json:"shortWindow,omitempty"`
	MediumWindow MediumWindow `json:"mediumWindow,omitempty"`
	LongWindow   LongWindow   `json:"longWindow,omitempty"`
}

type SdsResp

type SdsResp struct {
	ID string `json:"id"`
}

SdsResp defines struct for SdsResp

type SdsSdsCounterParameters added in v1.14.0

type SdsSdsCounterParameters struct {
	ShortWindow  ShortWindow  `json:"shortWindow,omitempty"`
	MediumWindow MediumWindow `json:"mediumWindow,omitempty"`
	LongWindow   LongWindow   `json:"longWindow,omitempty"`
}

type SdsWindow added in v1.10.0

type SdsWindow struct {
	ShortWindow  SdsWindowType `json:"shortWindow,omitempty"`
	MediumWindow SdsWindowType `json:"mediumWindow,omitempty"`
	LongWindow   SdsWindowType `json:"longWindow,omitempty"`
}

SdsWindow defines struct for SdsWindow

type SdsWindowType added in v1.10.0

type SdsWindowType struct {
	Threshold            int `json:"threshold,omitempty"`
	WindowSizeInSec      int `json:"windowSizeInSec,omitempty"`
	LastOscillationCount int `json:"lastOscillationCount,omitempty"`
	LastOscillationTime  int `json:"lastOscillationTime,omitempty"`
	MaxFailuresCount     int `json:"maxFailuresCount,omitempty"`
}

SdsWindowType defines struct for SdsWindowType

type SecurityConfigurationDetails added in v1.11.0

type SecurityConfigurationDetails struct {
	AllowNonSecureCommunicationWithMdm bool `json:"allowNonSecureCommunicationWithMdm"`
	AllowNonSecureCommunicationWithLia bool `json:"allowNonSecureCommunicationWithLia"`
	DisableNonMgmtComponentsAuth       bool `json:"disableNonMgmtComponentsAuth"`
}

SecurityConfigurationDetails defines struct for Security Details MDM Validation

type ServiceFailedResponse added in v1.14.0

type ServiceFailedResponse struct {
	DetailMessage string     `json:"detailMessage,omitempty"`
	Status        int        `json:"status,omitempty"`
	StatusCode    int        `json:"statusCode,omitempty"`
	Timestamp     string     `json:"timestamp,omitempty"`
	Error         string     `json:"error,omitempty"`
	Path          string     `json:"path,omitempty"`
	Messages      []Messages `json:"messages,omitempty"`
}

type ServiceResponse added in v1.14.0

type ServiceResponse struct {
	ID                           string                       `json:"id,omitempty"`
	DeploymentName               string                       `json:"deploymentName,omitempty"`
	DeploymentDescription        string                       `json:"deploymentDescription,omitempty"`
	DeploymentValid              DeploymentValid              `json:"deploymentValid,omitempty"`
	Retry                        bool                         `json:"retry,omitempty"`
	Teardown                     bool                         `json:"teardown,omitempty"`
	TeardownAfterCancel          bool                         `json:"teardownAfterCancel,omitempty"`
	RemoveService                bool                         `json:"removeService,omitempty"`
	CreatedDate                  string                       `json:"createdDate,omitempty"`
	CreatedBy                    string                       `json:"createdBy,omitempty"`
	UpdatedDate                  string                       `json:"updatedDate,omitempty"`
	UpdatedBy                    string                       `json:"updatedBy,omitempty"`
	DeploymentScheduledDate      string                       `json:"deploymentScheduledDate,omitempty"`
	DeploymentStartedDate        string                       `json:"deploymentStartedDate,omitempty"`
	DeploymentFinishedDate       string                       `json:"deploymentFinishedDate,omitempty"`
	ServiceTemplate              TemplateDetails              `json:"serviceTemplate"`
	ScheduleDate                 string                       `json:"scheduleDate,omitempty"`
	Status                       string                       `json:"status,omitempty"`
	Compliant                    bool                         `json:"compliant,omitempty"`
	DeploymentDevice             []DeploymentDevice           `json:"deploymentDevice,omitempty"`
	Vms                          []Vms                        `json:"vms,omitempty"`
	UpdateServerFirmware         bool                         `json:"updateServerFirmware,omitempty"`
	UseDefaultCatalog            bool                         `json:"useDefaultCatalog,omitempty"`
	FirmwareRepository           FirmwareRepository           `json:"firmwareRepository,omitempty"`
	FirmwareRepositoryID         string                       `json:"firmwareRepositoryId,omitempty"`
	LicenseRepository            LicenseRepository            `json:"licenseRepository,omitempty"`
	LicenseRepositoryID          string                       `json:"licenseRepositoryId,omitempty"`
	IndividualTeardown           bool                         `json:"individualTeardown,omitempty"`
	DeploymentHealthStatusType   string                       `json:"deploymentHealthStatusType,omitempty"`
	AssignedUsers                []AssignedUsers              `json:"assignedUsers,omitempty"`
	AllUsersAllowed              bool                         `json:"allUsersAllowed,omitempty"`
	Owner                        string                       `json:"owner,omitempty"`
	NoOp                         bool                         `json:"noOp,omitempty"`
	FirmwareInit                 bool                         `json:"firmwareInit,omitempty"`
	DisruptiveFirmware           bool                         `json:"disruptiveFirmware,omitempty"`
	PreconfigureSVM              bool                         `json:"preconfigureSVM,omitempty"`
	PreconfigureSVMAndUpdate     bool                         `json:"preconfigureSVMAndUpdate,omitempty"`
	ServicesDeployed             string                       `json:"servicesDeployed,omitempty"`
	PrecalculatedDeviceHealth    string                       `json:"precalculatedDeviceHealth,omitempty"`
	LifecycleModeReasons         []string                     `json:"lifecycleModeReasons,omitempty"`
	JobDetails                   []JobDetails                 `json:"jobDetails,omitempty"`
	NumberOfDeployments          int                          `json:"numberOfDeployments,omitempty"`
	OperationType                string                       `json:"operationType,omitempty"`
	OperationStatus              string                       `json:"operationStatus,omitempty"`
	OperationData                string                       `json:"operationData,omitempty"`
	DeploymentValidationResponse DeploymentValidationResponse `json:"deploymentValidationResponse,omitempty"`
	CurrentStepCount             string                       `json:"currentStepCount,omitempty"`
	TotalNumOfSteps              string                       `json:"totalNumOfSteps,omitempty"`
	CurrentStepMessage           string                       `json:"currentStepMessage,omitempty"`
	CustomImage                  string                       `json:"customImage,omitempty"`
	OriginalDeploymentID         string                       `json:"originalDeploymentId,omitempty"`
	CurrentBatchCount            string                       `json:"currentBatchCount,omitempty"`
	TotalBatchCount              string                       `json:"totalBatchCount,omitempty"`
	Brownfield                   bool                         `json:"brownfield,omitempty"`
	OverallDeviceHealth          string                       `json:"overallDeviceHealth,omitempty"`
	Vds                          bool                         `json:"vds,omitempty"`
	ScaleUp                      bool                         `json:"scaleUp,omitempty"`
	LifecycleMode                bool                         `json:"lifecycleMode,omitempty"`
	CanMigratevCLSVMs            bool                         `json:"canMigratevCLSVMs,omitempty"`
	TemplateValid                bool                         `json:"templateValid,omitempty"`
	ConfigurationChange          bool                         `json:"configurationChange,omitempty"`
	DetailMessage                string                       `json:"detailMessage,omitempty"`
	Timestamp                    string                       `json:"timestamp,omitempty"`
	Error                        string                       `json:"error,omitempty"`
	Path                         string                       `json:"path,omitempty"`
	Messages                     []Messages                   `json:"messages,omitempty"`
	StatusCode                   int                          `json:"statusCode,omitempty"`
}

type SetDeviceCapacityLimit added in v1.11.0

type SetDeviceCapacityLimit struct {
	DeviceCapacityLimit string `json:"capacityLimitInGB"`
}

SetDeviceCapacityLimit defines struct for setting device capacity limit

type SetDeviceExternalAccelerationType added in v1.11.0

type SetDeviceExternalAccelerationType struct {
	ExternalAccelerationType string `json:"externalAccelerationType"`
}

SetDeviceExternalAccelerationType defines struct for device external acceleration type

type SetDeviceMediaType added in v1.11.0

type SetDeviceMediaType struct {
	MediaType string `json:"mediaType"`
}

SetDeviceMediaType defines struct for setting device media type

type SetDeviceName added in v1.11.0

type SetDeviceName struct {
	Name string `json:"newName"`
}

SetDeviceName defines struct for setting device name

type SetMappedSdcLimitsParam

type SetMappedSdcLimitsParam struct {
	SdcID                string `json:"sdcId,omitempty"`
	BandwidthLimitInKbps string `json:"bandwidthLimitInKbps,omitempty"`
	IopsLimit            string `json:"iopsLimit,omitempty"`
}

SetMappedSdcLimitsParam defines struct for SetMappedSdcLimitsParam

type SetVolumeNameParam added in v1.6.0

type SetVolumeNameParam struct {
	NewName string `json:"newName,omitempty"`
}

SetVolumeNameParam defines struct for SetVolumeNameParam

type SetVolumeSizeParam added in v1.2.0

type SetVolumeSizeParam struct {
	SizeInGB string `json:"sizeInGB,omitempty"`
}

SetVolumeSizeParam defines struct for SetVolumeSizeParam

type ShortWindow added in v1.14.0

type ShortWindow struct {
	Threshold       int `json:"threshold,omitempty"`
	WindowSizeInSec int `json:"windowSizeInSec,omitempty"`
}

type SlaveMdmSet added in v1.12.0

type SlaveMdmSet struct {
	Node            Node     `json:"node,omitempty"`
	MdmIPs          []string `json:"mdmIPs,omitempty"`
	Name            string   `json:"name,omitempty"`
	ID              string   `json:"id,omitempty"`
	IPForActor      any      `json:"ipForActor,omitempty"`
	ManagementIPs   []string `json:"managementIPs,omitempty"`
	VirtIPIntfsList []string `json:"virtIpIntfsList,omitempty"`
}

SlaveMdmSet defines struct for Slave MDMs Details

type SnapShotPolicyCreateResp added in v1.14.0

type SnapShotPolicyCreateResp struct {
	ID string `json:"id"`
}

SnapShotPolicyCreateResp defines struct for the response when snapshot policy is created successfully

type SnapshotDef

type SnapshotDef struct {
	VolumeID     string `json:"volumeId,omitempty"`
	SnapshotName string `json:"snapshotName,omitempty"`
}

SnapshotDef defines struct for SnapshotDef

type SnapshotPolicy added in v1.10.0

type SnapshotPolicy struct {
	SnapshotPolicyState                   string  `json:"snapshotPolicyState"`
	AutoSnapshotCreationCadenceInMin      int     `json:"autoSnapshotCreationCadenceInMin"`
	MaxVTreeAutoSnapshots                 int     `json:"maxVTreeAutoSnapshots"`
	NumOfSourceVolumes                    int     `json:"numOfSourceVolumes"`
	NumOfExpiredButLockedSnapshots        int     `json:"numOfExpiredButLockedSnapshots"`
	NumOfCreationFailures                 int     `json:"numOfCreationFailures"`
	NumOfRetainedSnapshotsPerLevel        []int   `json:"numOfRetainedSnapshotsPerLevel"`
	SnapshotAccessMode                    string  `json:"snapshotAccessMode"`
	SecureSnapshots                       bool    `json:"secureSnapshots"`
	TimeOfLastAutoSnapshot                int     `json:"timeOfLastAutoSnapshot"`
	NextAutoSnapshotCreationTime          int     `json:"nextAutoSnapshotCreationTime"`
	TimeOfLastAutoSnapshotCreationFailure int     `json:"timeOfLastAutoSnapshotCreationFailure"`
	LastAutoSnapshotCreationFailureReason string  `json:"lastAutoSnapshotCreationFailureReason"`
	LastAutoSnapshotFailureInFirstLevel   bool    `json:"lastAutoSnapshotFailureInFirstLevel"`
	NumOfAutoSnapshots                    int     `json:"numOfAutoSnapshots"`
	NumOfLockedSnapshots                  int     `json:"numOfLockedSnapshots"`
	SystemID                              string  `json:"systemId"`
	Name                                  string  `json:"name"`
	ID                                    string  `json:"id"`
	Links                                 []*Link `json:"links"`
}

SnapshotPolicy defines the struct for SnapshotPolicy

type SnapshotPolicyCreateParam added in v1.14.0

type SnapshotPolicyCreateParam struct {
	AutoSnapshotCreationCadenceInMin string   `json:"autoSnapshotCreationCadenceInMin"`
	NumOfRetainedSnapshotsPerLevel   []string `json:"numOfRetainedSnapshotsPerLevel"`
	SnapshotAccessMode               string   `json:"snapshotAccessMode,omitempty"`
	SecureSnapshots                  string   `json:"secureSnapshots,omitempty"`
	Name                             string   `json:"name"`
	Paused                           string   `json:"paused,omitempty"`
}

SnapshotPolicyCreateParam defines the struct for creating a Snapshot Policy

type SnapshotPolicyModifyParam added in v1.14.0

type SnapshotPolicyModifyParam struct {
	AutoSnapshotCreationCadenceInMin string   `json:"autoSnapshotCreationCadenceInMin"`
	NumOfRetainedSnapshotsPerLevel   []string `json:"numOfRetainedSnapshotsPerLevel"`
}

SnapshotPolicyModifyParam defines the struct for modifying a Snapshot Policy

type SnapshotPolicyQueryIDByKeyParam added in v1.10.0

type SnapshotPolicyQueryIDByKeyParam struct {
	Name string `json:"name"`
}

SnapshotPolicyQueryIDByKeyParam defines struct for SnapshotPolicyQueryIDByKeyParam

type SnapshotPolicyRenameParam added in v1.14.0

type SnapshotPolicyRenameParam struct {
	NewName string `json:"newName"`
}

SnapshotPolicyRenameParam defines the struct for renaming a Snapshot Policy

type SnapshotVolumesParam

type SnapshotVolumesParam struct {
	SnapshotDefs         []*SnapshotDef `json:"snapshotDefs"`
	RetentionPeriodInMin string         `json:"retentionPeriodInMin,omitempty"`
	AccessMode           string         `json:"accessModeLimit,omitempty"`
	AllowOnExtManagedVol bool           `json:"allowOnExtManagedVol,omitempty"`
}

SnapshotVolumesParam defines struct for SnapshotVolumesParam

type SnapshotVolumesResp

type SnapshotVolumesResp struct {
	VolumeIDList    []string `json:"volumeIdList"`
	SnapshotGroupID string   `json:"snapshotGroupId"`
}

SnapshotVolumesResp defines struct for SnapshotVolumesResp

type SoftwareBundles added in v1.14.0

type SoftwareBundles struct {
	ID                 string               `json:"id,omitempty"`
	Name               string               `json:"name,omitempty"`
	Version            string               `json:"version,omitempty"`
	BundleDate         string               `json:"bundleDate,omitempty"`
	CreatedDate        string               `json:"createdDate,omitempty"`
	CreatedBy          string               `json:"createdBy,omitempty"`
	UpdatedDate        string               `json:"updatedDate,omitempty"`
	UpdatedBy          string               `json:"updatedBy,omitempty"`
	Description        string               `json:"description,omitempty"`
	UserBundle         bool                 `json:"userBundle,omitempty"`
	UserBundlePath     string               `json:"userBundlePath,omitempty"`
	UserBundleHashMd5  string               `json:"userBundleHashMd5,omitempty"`
	DeviceType         string               `json:"deviceType,omitempty"`
	DeviceModel        string               `json:"deviceModel,omitempty"`
	Criticality        string               `json:"criticality,omitempty"`
	FwRepositoryID     string               `json:"fwRepositoryId,omitempty"`
	Link               Link                 `json:"link,omitempty"`
	BundleType         string               `json:"bundleType,omitempty"`
	Custom             bool                 `json:"custom,omitempty"`
	NeedsAttention     bool                 `json:"needsAttention,omitempty"`
	SoftwareComponents []SoftwareComponents `json:"softwareComponents,omitempty"`
}

type SoftwareComponents added in v1.14.0

type SoftwareComponents struct {
	ID                  string   `json:"id,omitempty"`
	PackageID           string   `json:"packageId,omitempty"`
	DellVersion         string   `json:"dellVersion,omitempty"`
	VendorVersion       string   `json:"vendorVersion,omitempty"`
	ComponentID         string   `json:"componentId,omitempty"`
	DeviceID            string   `json:"deviceId,omitempty"`
	SubDeviceID         string   `json:"subDeviceId,omitempty"`
	VendorID            string   `json:"vendorId,omitempty"`
	SubVendorID         string   `json:"subVendorId,omitempty"`
	CreatedDate         string   `json:"createdDate,omitempty"`
	CreatedBy           string   `json:"createdBy,omitempty"`
	UpdatedDate         string   `json:"updatedDate,omitempty"`
	UpdatedBy           string   `json:"updatedBy,omitempty"`
	Path                string   `json:"path,omitempty"`
	HashMd5             string   `json:"hashMd5,omitempty"`
	Name                string   `json:"name,omitempty"`
	Category            string   `json:"category,omitempty"`
	ComponentType       string   `json:"componentType,omitempty"`
	OperatingSystem     string   `json:"operatingSystem,omitempty"`
	SystemIDs           []string `json:"systemIDs,omitempty"`
	Custom              bool     `json:"custom,omitempty"`
	NeedsAttention      bool     `json:"needsAttention,omitempty"`
	Ignore              bool     `json:"ignore,omitempty"`
	OriginalVersion     string   `json:"originalVersion,omitempty"`
	OriginalComponentID string   `json:"originalComponentId,omitempty"`
	FirmwareRepoName    string   `json:"firmwareRepoName,omitempty"`
}

type SparePercentageParam added in v1.11.0

type SparePercentageParam struct {
	SparePercentage string `json:"sparePercentage"`
}

SparePercentageParam defines struct for Spare Percentage

type StandByMdm added in v1.12.0

type StandByMdm struct {
	Name               string   `json:"name,omitempty"`
	Port               string   `json:"port,omitempty"`
	IPs                []string `json:"ips"`
	ManagementIPs      []string `json:"managementIps,omitempty"`
	Role               string   `json:"role"`
	VirtualInterfaces  []string `json:"virtIpIntfs,omitempty"`
	ForceClean         string   `json:"forceClean,omitempty"`
	AllowAsymmetricIps string   `json:"allowAsymmetricIps,omitempty"`
}

StandByMdm defines struct for StandBy MDM

type StandbyMdmSet added in v1.12.0

type StandbyMdmSet struct {
	Node            Node     `json:"node,omitempty"`
	MdmIPs          []string `json:"mdmIPs,omitempty"`
	Name            string   `json:"name,omitempty"`
	ID              string   `json:"id,omitempty"`
	IPForActor      any      `json:"ipForActor,omitempty"`
	ManagementIPs   []string `json:"managementIPs,omitempty"`
	VirtIPIntfsList []string `json:"virtIpIntfsList,omitempty"`
}

StandbyMdmSet defines struct for Standby MDMs Details

type StandbyTbSet added in v1.12.0

type StandbyTbSet struct {
	Node   Node     `json:"node,omitempty"`
	MdmIPs []string `json:"mdmIPs,omitempty"`
	Name   string   `json:"name,omitempty"`
	ID     string   `json:"id,omitempty"`
	TbIPs  []string `json:"tbIPs,omitempty"`
}

StandbyTbSet defines struct for Standby TB MDMs Details

type StaticNetworkConfiguration added in v1.14.0

type StaticNetworkConfiguration struct {
	Gateway      string        `json:"gateway,omitempty"`
	Subnet       string        `json:"subnet,omitempty"`
	PrimaryDNS   string        `json:"primaryDns,omitempty"`
	SecondaryDNS string        `json:"secondaryDns,omitempty"`
	DNSSuffix    string        `json:"dnsSuffix,omitempty"`
	IPRange      []IPRange     `json:"ipRange,omitempty"`
	IPAddress    string        `json:"ipAddress,omitempty"`
	StaticRoute  []StaticRoute `json:"staticRoute,omitempty"`
}

type StaticRoute added in v1.14.0

type StaticRoute struct {
	StaticRouteSourceNetworkID      string `json:"staticRouteSourceNetworkId,omitempty"`
	StaticRouteDestinationNetworkID string `json:"staticRouteDestinationNetworkId,omitempty"`
	StaticRouteGateway              string `json:"staticRouteGateway,omitempty"`
	SubnetMask                      string `json:"subnetMask,omitempty"`
	DestinationIPAddress            string `json:"destinationIpAddress,omitempty"`
}

type Statistics

type Statistics struct {
	PrimaryReadFromDevBwc                    BWC `json:"primaryReadFromDevBwc"`
	NumOfStoragePools                        int `json:"numOfStoragePools"`
	ProtectedCapacityInKb                    int `json:"protectedCapacityInKb"`
	MovingCapacityInKb                       int `json:"movingCapacityInKb"`
	SnapCapacityInUseOccupiedInKb            int `json:"snapCapacityInUseOccupiedInKb"`
	SnapCapacityInUseInKb                    int `json:"snapCapacityInUseInKb"`
	ActiveFwdRebuildCapacityInKb             int `json:"activeFwdRebuildCapacityInKb"`
	DegradedHealthyVacInKb                   int `json:"degradedHealthyVacInKb"`
	ActiveMovingRebalanceJobs                int `json:"activeMovingRebalanceJobs"`
	TotalReadBwc                             BWC `json:"totalReadBwc"`
	MaxCapacityInKb                          int `json:"maxCapacityInKb"`
	PendingBckRebuildCapacityInKb            int `json:"pendingBckRebuildCapacityInKb"`
	ActiveMovingOutFwdRebuildJobs            int `json:"activeMovingOutFwdRebuildJobs"`
	CapacityLimitInKb                        int `json:"capacityLimitInKb"`
	SecondaryVacInKb                         int `json:"secondaryVacInKb"`
	PendingFwdRebuildCapacityInKb            int `json:"pendingFwdRebuildCapacityInKb"`
	ThinCapacityInUseInKb                    int `json:"thinCapacityInUseInKb"`
	AtRestCapacityInKb                       int `json:"atRestCapacityInKb"`
	ActiveMovingInBckRebuildJobs             int `json:"activeMovingInBckRebuildJobs"`
	DegradedHealthyCapacityInKb              int `json:"degradedHealthyCapacityInKb"`
	NumOfScsiInitiators                      int `json:"numOfScsiInitiators"`
	NumOfUnmappedVolumes                     int `json:"numOfUnmappedVolumes"`
	FailedCapacityInKb                       int `json:"failedCapacityInKb"`
	SecondaryReadFromDevBwc                  BWC `json:"secondaryReadFromDevBwc"`
	NumOfVolumes                             int `json:"numOfVolumes"`
	SecondaryWriteBwc                        BWC `json:"secondaryWriteBwc"`
	ActiveBckRebuildCapacityInKb             int `json:"activeBckRebuildCapacityInKb"`
	FailedVacInKb                            int `json:"failedVacInKb"`
	PendingMovingCapacityInKb                int `json:"pendingMovingCapacityInKb"`
	ActiveMovingInRebalanceJobs              int `json:"activeMovingInRebalanceJobs"`
	PendingMovingInRebalanceJobs             int `json:"pendingMovingInRebalanceJobs"`
	BckRebuildReadBwc                        BWC `json:"bckRebuildReadBwc"`
	DegradedFailedVacInKb                    int `json:"degradedFailedVacInKb"`
	NumOfSnapshots                           int `json:"numOfSnapshots"`
	RebalanceCapacityInKb                    int `json:"rebalanceCapacityInKb"`
	FwdRebuildReadBwc                        BWC `json:"fwdRebuildReadBwc"`
	NumOfSdc                                 int `json:"numOfSdc"`
	ActiveMovingInFwdRebuildJobs             int `json:"activeMovingInFwdRebuildJobs"`
	NumOfVtrees                              int `json:"numOfVtrees"`
	ThickCapacityInUseInKb                   int `json:"thickCapacityInUseInKb"`
	ProtectedVacInKb                         int `json:"protectedVacInKb"`
	PendingMovingInBckRebuildJobs            int `json:"pendingMovingInBckRebuildJobs"`
	CapacityAvailableForVolumeAllocationInKb int `json:"capacityAvailableForVolumeAllocationInKb"`
	VolumeAllocationLimitInKb                int `json:"volumeAllocationLimitInKb"`
	PendingRebalanceCapacityInKb             int `json:"pendingRebalanceCapacityInKb"`
	PendingMovingRebalanceJobs               int `json:"pendingMovingRebalanceJobs"`
	NumOfProtectionDomains                   int `json:"numOfProtectionDomains"`
	NumOfSds                                 int `json:"numOfSds"`
	CapacityInUseInKb                        int `json:"capacityInUseInKb"`
	BckRebuildWriteBwc                       BWC `json:"bckRebuildWriteBwc"`
	DegradedFailedCapacityInKb               int `json:"degradedFailedCapacityInKb"`
	NumOfThinBaseVolumes                     int `json:"numOfThinBaseVolumes"`
	PendingMovingOutFwdRebuildJobs           int `json:"pendingMovingOutFwdRebuildJobs"`
	SecondaryReadBwc                         BWC `json:"secondaryReadBwc"`
	PendingMovingOutBckRebuildJobs           int `json:"pendingMovingOutBckRebuildJobs"`
	RebalanceWriteBwc                        BWC `json:"rebalanceWriteBwc"`
	PrimaryReadBwc                           BWC `json:"primaryReadBwc"`
	NumOfVolumesInDeletion                   int `json:"numOfVolumesInDeletion"`
	NumOfDevices                             int `json:"numOfDevices"`
	RebalanceReadBwc                         BWC `json:"rebalanceReadBwc"`
	InUseVacInKb                             int `json:"inUseVacInKb"`
	UnreachableUnusedCapacityInKb            int `json:"unreachableUnusedCapacityInKb"`
	TotalWriteBwc                            BWC `json:"totalWriteBwc"`
	SpareCapacityInKb                        int `json:"spareCapacityInKb"`
	ActiveMovingOutBckRebuildJobs            int `json:"activeMovingOutBckRebuildJobs"`
	PrimaryVacInKb                           int `json:"primaryVacInKb"`
	NumOfThickBaseVolumes                    int `json:"numOfThickBaseVolumes"`
	BckRebuildCapacityInKb                   int `json:"bckRebuildCapacityInKb"`
	NumOfMappedToAllVolumes                  int `json:"numOfMappedToAllVolumes"`
	ActiveMovingCapacityInKb                 int `json:"activeMovingCapacityInKb"`
	PendingMovingInFwdRebuildJobs            int `json:"pendingMovingInFwdRebuildJobs"`
	ActiveRebalanceCapacityInKb              int `json:"activeRebalanceCapacityInKb"`
	RmcacheSizeInKb                          int `json:"rmcacheSizeInKb"`
	FwdRebuildCapacityInKb                   int `json:"fwdRebuildCapacityInKb"`
	FwdRebuildWriteBwc                       BWC `json:"fwdRebuildWriteBwc"`
	PrimaryWriteBwc                          BWC `json:"primaryWriteBwc"`
	NetUserDataCapacityInKb                  int `json:"netUserDataCapacityInKb"`
	NetUnusedCapacityInKb                    int `json:"netUnusedCapacityInKb"`
	VolumeAddressSpaceInKb                   int `json:"volumeAddressSpaceInKb"`
}

Statistics defines struct of Statistics for PowerFlex Array

type StatisticsDetails added in v1.14.0

type StatisticsDetails struct {
	NumOfDevices                             int `json:"numOfDevices,omitempty"`
	UnusedCapacityInKb                       int `json:"unusedCapacityInKb,omitempty"`
	NumOfVolumes                             int `json:"numOfVolumes,omitempty"`
	NumOfMappedToAllVolumes                  int `json:"numOfMappedToAllVolumes,omitempty"`
	CapacityAvailableForVolumeAllocationInKb int `json:"capacityAvailableForVolumeAllocationInKb,omitempty"`
	VolumeAllocationLimitInKb                int `json:"volumeAllocationLimitInKb,omitempty"`
	CapacityLimitInKb                        int `json:"capacityLimitInKb,omitempty"`
	NumOfUnmappedVolumes                     int `json:"numOfUnmappedVolumes,omitempty"`
	SpareCapacityInKb                        int `json:"spareCapacityInKb,omitempty"`
	CapacityInUseInKb                        int `json:"capacityInUseInKb,omitempty"`
	MaxCapacityInKb                          int `json:"maxCapacityInKb,omitempty"`

	NumOfSds int `json:"numOfSds,omitempty"`

	NumOfStoragePools int `json:"numOfStoragePools,omitempty"`
	NumOfFaultSets    int `json:"numOfFaultSets,omitempty"`

	ThinCapacityInUseInKb  int `json:"thinCapacityInUseInKb,omitempty"`
	ThickCapacityInUseInKb int `json:"thickCapacityInUseInKb,omitempty"`
}

type StoragePool

type StoragePool struct {
	ProtectionDomainID                                              string  `json:"protectionDomainId"`
	RebalanceioPriorityPolicy                                       string  `json:"rebalanceIoPriorityPolicy"`
	RebuildioPriorityPolicy                                         string  `json:"rebuildIoPriorityPolicy"`
	RebuildioPriorityBwLimitPerDeviceInKbps                         int     `json:"rebuildIoPriorityBwLimitPerDeviceInKbps"`
	RebuildioPriorityNumOfConcurrentIosPerDevice                    int     `json:"rebuildIoPriorityNumOfConcurrentIosPerDevice"`
	RebalanceioPriorityNumOfConcurrentIosPerDevice                  int     `json:"rebalanceIoPriorityNumOfConcurrentIosPerDevice"`
	RebalanceioPriorityBwLimitPerDeviceInKbps                       int     `json:"rebalanceIoPriorityBwLimitPerDeviceInKbps"`
	RebuildioPriorityAppIopsPerDeviceThreshold                      int     `json:"rebuildIoPriorityAppIopsPerDeviceThreshold"`
	RebalanceioPriorityAppIopsPerDeviceThreshold                    int     `json:"rebalanceIoPriorityAppIopsPerDeviceThreshold"`
	RebuildioPriorityAppBwPerDeviceThresholdInKbps                  int     `json:"rebuildIoPriorityAppBwPerDeviceThresholdInKbps"`
	RebalanceioPriorityAppBwPerDeviceThresholdInKbps                int     `json:"rebalanceIoPriorityAppBwPerDeviceThresholdInKbps"`
	RebuildioPriorityQuietPeriodInMsec                              int     `json:"rebuildIoPriorityQuietPeriodInMsec"`
	RebalanceioPriorityQuietPeriodInMsec                            int     `json:"rebalanceIoPriorityQuietPeriodInMsec"`
	ZeroPaddingEnabled                                              bool    `json:"zeroPaddingEnabled"`
	UseRmcache                                                      bool    `json:"useRmcache"`
	SparePercentage                                                 int     `json:"sparePercentage"`
	RmCacheWriteHandlingMode                                        string  `json:"rmcacheWriteHandlingMode"`
	RebuildEnabled                                                  bool    `json:"rebuildEnabled"`
	RebalanceEnabled                                                bool    `json:"rebalanceEnabled"`
	NumofParallelRebuildRebalanceJobsPerDevice                      int     `json:"numOfParallelRebuildRebalanceJobsPerDevice"`
	Name                                                            string  `json:"name"`
	ID                                                              string  `json:"id"`
	Links                                                           []*Link `json:"links"`
	BackgroundScannerBWLimitKBps                                    int     `json:"backgroundScannerBWLimitKBps"`
	ProtectedMaintenanceModeIoPriorityNumOfConcurrentIosPerDevice   int     `json:"protectedMaintenanceModeIoPriorityNumOfConcurrentIosPerDevice"`
	DataLayout                                                      string  `json:"dataLayout"`
	VtreeMigrationIoPriorityBwLimitPerDeviceInKbps                  int     `json:"vtreeMigrationIoPriorityBwLimitPerDeviceInKbps"`
	VtreeMigrationIoPriorityPolicy                                  string  `json:"vtreeMigrationIoPriorityPolicy"`
	AddressSpaceUsage                                               string  `json:"addressSpaceUsage"`
	ExternalAccelerationType                                        string  `json:"externalAccelerationType"`
	PersistentChecksumState                                         string  `json:"persistentChecksumState"`
	UseRfcache                                                      bool    `json:"useRfcache"`
	ChecksumEnabled                                                 bool    `json:"checksumEnabled"`
	CompressionMethod                                               string  `json:"compressionMethod"`
	FragmentationEnabled                                            bool    `json:"fragmentationEnabled"`
	CapacityUsageState                                              string  `json:"capacityUsageState"`
	CapacityUsageType                                               string  `json:"capacityUsageType"`
	AddressSpaceUsageType                                           string  `json:"addressSpaceUsageType"`
	BgScannerCompareErrorAction                                     string  `json:"bgScannerCompareErrorAction"`
	BgScannerReadErrorAction                                        string  `json:"bgScannerReadErrorAction"`
	ReplicationCapacityMaxRatio                                     int     `json:"replicationCapacityMaxRatio"`
	PersistentChecksumEnabled                                       bool    `json:"persistentChecksumEnabled"`
	PersistentChecksumBuilderLimitKb                                int     `json:"persistentChecksumBuilderLimitKb"`
	PersistentChecksumValidateOnRead                                bool    `json:"persistentChecksumValidateOnRead"`
	VtreeMigrationIoPriorityNumOfConcurrentIosPerDevice             int     `json:"vtreeMigrationIoPriorityNumOfConcurrentIosPerDevice"`
	ProtectedMaintenanceModeIoPriorityPolicy                        string  `json:"protectedMaintenanceModeIoPriorityPolicy"`
	BackgroundScannerMode                                           string  `json:"backgroundScannerMode"`
	MediaType                                                       string  `json:"mediaType"`
	CapacityAlertHighThreshold                                      int     `json:"capacityAlertHighThreshold"`
	CapacityAlertCriticalThreshold                                  int     `json:"capacityAlertCriticalThreshold"`
	VtreeMigrationIoPriorityAppIopsPerDeviceThreshold               int     `json:"vtreeMigrationIoPriorityAppIopsPerDeviceThreshold"`
	VtreeMigrationIoPriorityAppBwPerDeviceThresholdInKbps           int     `json:"vtreeMigrationIoPriorityAppBwPerDeviceThresholdInKbps"`
	VtreeMigrationIoPriorityQuietPeriodInMsec                       int     `json:"vtreeMigrationIoPriorityQuietPeriodInMsec"`
	FglAccpID                                                       string  `json:"fglAccpId"`
	FglExtraCapacity                                                int     `json:"fglExtraCapacity"`
	FglOverProvisioningFactor                                       int     `json:"fglOverProvisioningFactor"`
	FglWriteAtomicitySize                                           int     `json:"fglWriteAtomicitySize"`
	FglNvdimmWriteCacheSizeInMb                                     int     `json:"fglNvdimmWriteCacheSizeInMb"`
	FglNvdimmMetadataAmortizationX100                               int     `json:"fglNvdimmMetadataAmortizationX100"`
	FglPerfProfile                                                  string  `json:"fglPerfProfile"`
	ProtectedMaintenanceModeIoPriorityBwLimitPerDeviceInKbps        int     `json:"protectedMaintenanceModeIoPriorityBwLimitPerDeviceInKbps"`
	ProtectedMaintenanceModeIoPriorityAppIopsPerDeviceThreshold     int     `json:"protectedMaintenanceModeIoPriorityAppIopsPerDeviceThreshold"`
	ProtectedMaintenanceModeIoPriorityAppBwPerDeviceThresholdInKbps int     `json:"protectedMaintenanceModeIoPriorityAppBwPerDeviceThresholdInKbps"`
	ProtectedMaintenanceModeIoPriorityQuietPeriodInMsec             int     `json:"protectedMaintenanceModeIoPriorityQuietPeriodInMsec"`
}

StoragePool defines struct for PowerFlex StoragePool

type StoragePoolList added in v1.14.0

type StoragePoolList struct {
	ID                                               string            `json:"id,omitempty"`
	Name                                             string            `json:"name,omitempty"`
	RebuildIoPriorityPolicy                          string            `json:"rebuildIoPriorityPolicy,omitempty"`
	RebalanceIoPriorityPolicy                        string            `json:"rebalanceIoPriorityPolicy,omitempty"`
	RebuildIoPriorityNumOfConcurrentIosPerDevice     int               `json:"rebuildIoPriorityNumOfConcurrentIosPerDevice,omitempty"`
	RebalanceIoPriorityNumOfConcurrentIosPerDevice   int               `json:"rebalanceIoPriorityNumOfConcurrentIosPerDevice,omitempty"`
	RebuildIoPriorityBwLimitPerDeviceInKbps          int               `json:"rebuildIoPriorityBwLimitPerDeviceInKbps,omitempty"`
	RebalanceIoPriorityBwLimitPerDeviceInKbps        int               `json:"rebalanceIoPriorityBwLimitPerDeviceInKbps,omitempty"`
	RebuildIoPriorityAppIopsPerDeviceThreshold       string            `json:"rebuildIoPriorityAppIopsPerDeviceThreshold,omitempty"`
	RebalanceIoPriorityAppIopsPerDeviceThreshold     string            `json:"rebalanceIoPriorityAppIopsPerDeviceThreshold,omitempty"`
	RebuildIoPriorityAppBwPerDeviceThresholdInKbps   int               `json:"rebuildIoPriorityAppBwPerDeviceThresholdInKbps,omitempty"`
	RebalanceIoPriorityAppBwPerDeviceThresholdInKbps int               `json:"rebalanceIoPriorityAppBwPerDeviceThresholdInKbps,omitempty"`
	RebuildIoPriorityQuietPeriodInMsec               int               `json:"rebuildIoPriorityQuietPeriodInMsec,omitempty"`
	RebalanceIoPriorityQuietPeriodInMsec             int               `json:"rebalanceIoPriorityQuietPeriodInMsec,omitempty"`
	ZeroPaddingEnabled                               bool              `json:"zeroPaddingEnabled,omitempty"`
	BackgroundScannerMode                            string            `json:"backgroundScannerMode,omitempty"`
	BackgroundScannerBWLimitKBps                     int               `json:"backgroundScannerBWLimitKBps,omitempty"`
	UseRmcache                                       bool              `json:"useRmcache,omitempty"`
	ProtectionDomainID                               string            `json:"protectionDomainId,omitempty"`
	SpClass                                          string            `json:"spClass,omitempty"`
	UseRfcache                                       bool              `json:"useRfcache,omitempty"`
	SparePercentage                                  int               `json:"sparePercentage,omitempty"`
	RmcacheWriteHandlingMode                         string            `json:"rmcacheWriteHandlingMode,omitempty"`
	ChecksumEnabled                                  bool              `json:"checksumEnabled,omitempty"`
	RebuildEnabled                                   bool              `json:"rebuildEnabled,omitempty"`
	RebalanceEnabled                                 bool              `json:"rebalanceEnabled,omitempty"`
	NumOfParallelRebuildRebalanceJobsPerDevice       int               `json:"numOfParallelRebuildRebalanceJobsPerDevice,omitempty"`
	CapacityAlertHighThreshold                       int               `json:"capacityAlertHighThreshold,omitempty"`
	CapacityAlertCriticalThreshold                   int               `json:"capacityAlertCriticalThreshold,omitempty"`
	Statistics                                       StatisticsDetails `json:"statistics,omitempty"`
	DataLayout                                       string            `json:"dataLayout,omitempty"`
	ReplicationCapacityMaxRatio                      string            `json:"replicationCapacityMaxRatio,omitempty"`
	MediaType                                        string            `json:"mediaType,omitempty"`
	DiskList                                         []DiskList        `json:"disk_list,omitempty"`
	VolumeList                                       []VolumeList      `json:"volume_list,omitempty"`
	FglAccpID                                        string            `json:"fglAccpId,omitempty"`
}

type StoragePoolMediaType added in v1.10.0

type StoragePoolMediaType struct {
	MediaType string `json:"mediaType"`
}

StoragePoolMediaType defines struct for StoragePoolMediaType

type StoragePoolParam

type StoragePoolParam struct {
	Name                     string `json:"name"`
	SparePercentage          string `json:"sparePercentage,omitempty"`
	RebuildEnabled           bool   `json:"rebuildEnabled,omitempty"`
	RebalanceEnabled         bool   `json:"rebalanceEnabled,omitempty"`
	ProtectionDomainID       string `json:"protectionDomainId"`
	ZeroPaddingEnabled       string `json:"zeroPaddingEnabled,omitempty"`
	UseRmcache               string `json:"useRmcache,omitempty"`
	UseRfcache               string `json:"useRfcache,omitempty"`
	RmcacheWriteHandlingMode string `json:"rmcacheWriteHandlingMode,omitempty"`
	MediaType                string `json:"mediaType,omitempty"`
}

StoragePoolParam defines struct for StoragePoolParam

type StoragePoolResp

type StoragePoolResp struct {
	ID string `json:"id"`
}

StoragePoolResp defines struct for StoragePoolResp

type StoragePoolUseRfCache added in v1.10.0

type StoragePoolUseRfCache struct {
}

StoragePoolUseRfCache defines struct for StoragePoolUseRfCache

type StoragePoolUseRmCache added in v1.10.0

type StoragePoolUseRmCache struct {
	UseRmcache string `json:"useRmcache"`
}

StoragePoolUseRmCache defines struct for StoragePoolUseRmCache

type StoragePoolZeroPadEnabled added in v1.11.0

type StoragePoolZeroPadEnabled struct {
	ZeroPadEnabled string `json:"zeroPadEnabled"`
}

StoragePoolZeroPadEnabled defines struct for zero Pad Enablement

type StoragePools added in v1.12.0

type StoragePools struct {
	Name                     string `json:"name,omitempty"`
	MediaType                string `json:"mediaType,omitempty"`
	ExternalAccelerationType string `json:"externalAccelerationType,omitempty"`
	DataLayout               string `json:"dataLayout,omitempty"`
	CompressionMethod        string `json:"compressionMethod,omitempty"`
	SpefAccPoolName          any    `json:"spefAccPoolName,omitempty"`
	ShouldApplyZeroPadding   bool   `json:"shouldApplyZeroPadding,omitempty"`
	WriteAtomicitySize       any    `json:"writeAtomicitySize,omitempty"`
	OverProvisioningFactor   any    `json:"overProvisioningFactor,omitempty"`
	MaxCompressionRatio      any    `json:"maxCompressionRatio,omitempty"`
	PerfProfile              any    `json:"perfProfile,omitempty"`
	RplJournalCapacity       int    `json:"rplJournalCapacity,omitempty"`
}

StoragePools defines struct for StoragePools Details

type StoragePropsParams added in v1.11.0

type StoragePropsParams struct {
	FglAccDeviceID                   string `json:"fglAccDeviceId,omitempty"`
	FglNvdimmSizeMb                  int    `json:"fglNvdimmSizeMb,omitempty"`
	DestFglNvdimmSizeMb              int    `json:"destFglNvdimmSizeMb,omitempty"`
	DestFglAccDeviceID               string `json:"destFglAccDeviceId,omitempty"`
	ChecksumMode                     string `json:"checksumMode,omitempty"`
	DestChecksumMode                 string `json:"destChecksumMode,omitempty"`
	ChecksumAccDeviceID              string `json:"checksumAccDeviceId,omitempty"`
	DestChecksumAccDeviceID          string `json:"destChecksumAccDeviceId,omitempty"`
	ChecksumSizeMb                   int    `json:"checksumSizeMb,omitempty"`
	IsChecksumFullyCalculated        bool   `json:"isChecksumFullyCalculated,omitempty"`
	ChecksumChangelogAccDeviceID     string `json:"checksumChangelogAccDeviceId,omitempty"`
	DestChecksumChangelogAccDeviceID string `json:"destChecksumChangelogAccDeviceId,omitempty"`
	ChecksumChangelogSizeMb          int    `json:"checksumChangelogSizeMb,omitempty"`
	DestChecksumChangelogSizeMb      int    `json:"destChecksumChangelogSizeMb,omitempty"`
}

StoragePropsParams defines struct for Device

type SwitchClusterMode added in v1.12.0

type SwitchClusterMode struct {
	Mode                string   `json:"mode"`
	AddSecondaryMdms    []string `json:"addSlaveMdmIdList,omitempty"`
	AddTBMdms           []string `json:"addTBIdList,omitempty"`
	RemoveSecondaryMdms []string `json:"removeSlaveMdmIdList,omitempty"`
	RemoveTBMdms        []string `json:"removeTBIdList,omitempty"`
}

SwitchClusterMode defines struct for switching cluster mode

type SynchronizationResponse added in v1.10.0

type SynchronizationResponse struct {
	SyncNowKey string `json:"syncNowKey"`
}

SynchronizationResponse defines struct for SynchronizationResponse.

type System

type System struct {
	MdmMode                               string   `json:"mdmMode"`
	MdmClusterState                       string   `json:"mdmClusterState"`
	SecondaryMdmActorIPList               []string `json:"secondaryMdmActorIpList"`
	InstallID                             string   `json:"installId"`
	PrimaryActorIPList                    []string `json:"primaryMdmActorIpList"`
	SystemVersionName                     string   `json:"systemVersionName"`
	CapacityAlertHighThresholdPercent     int      `json:"capacityAlertHighThresholdPercent"`
	CapacityAlertCriticalThresholdPercent int      `json:"capacityAlertCriticalThresholdPercent"`
	RemoteReadOnlyLimitState              bool     `json:"remoteReadOnlyLimitState"`
	PrimaryMdmActorPort                   int      `json:"primaryMdmActorPort"`
	SecondaryMdmActorPort                 int      `json:"secondaryMdmActorPort"`
	TiebreakerMdmActorPort                int      `json:"tiebreakerMdmActorPort"`
	MdmManagementPort                     int      `json:"mdmManagementPort"`
	TiebreakerMdmIPList                   []string `json:"tiebreakerMdmIpList"`
	MdmManagementIPList                   []string `json:"mdmManagementIPList"`
	DefaultIsVolumeObfuscated             bool     `json:"defaultIsVolumeObfuscated"`
	RestrictedSdcModeEnabled              bool     `json:"restrictedSdcModeEnabled"`
	RestrictedSdcMode                     string   `json:"restrictedSdcMode"`
	Swid                                  string   `json:"swid"`
	DaysInstalled                         int      `json:"daysInstalled"`
	MaxCapacityInGb                       string   `json:"maxCapacityInGb"`
	CapacityTimeLeftInDays                string   `json:"capacityTimeLeftInDays"`
	EnterpriseFeaturesEnabled             bool     `json:"enterpriseFeaturesEnabled"`
	IsInitialLicense                      bool     `json:"isInitialLicense"`
	Name                                  string   `json:"name"`
	ID                                    string   `json:"id"`
	Links                                 []*Link  `json:"links"`
	PerformanceProfile                    string   `json:"perfProfile"`
}

System defines struct of PowerFlex array

type SystemLimits added in v1.13.0

type SystemLimits struct {
	Type        string `json:"type,omitempty"`
	Description string `json:"description,omitempty"`
	MaxVal      string `json:"maxVal,omitempty"`
}

SystemLimits defines struct for system limits

type TbSet added in v1.12.0

type TbSet struct {
	Node   Node     `json:"node,omitempty"`
	MdmIPs []string `json:"mdmIPs,omitempty"`
	Name   string   `json:"name,omitempty"`
	ID     string   `json:"id,omitempty"`
	TbIPs  []string `json:"tbIPs,omitempty"`
}

TbSet defines struct for TB MDMs Details

type TemplateDetails added in v1.14.0

type TemplateDetails struct {
	ID                     string               `json:"id,omitempty"`
	TemplateName           string               `json:"templateName,omitempty"`
	TemplateDescription    string               `json:"templateDescription,omitempty"`
	TemplateType           string               `json:"templateType,omitempty"`
	TemplateVersion        string               `json:"templateVersion,omitempty"`
	OriginalTemplateID     string               `json:"originalTemplateId,omitempty"`
	TemplateValid          TemplateValid        `json:"templateValid,omitempty"`
	TemplateLocked         bool                 `json:"templateLocked,omitempty"`
	InConfiguration        bool                 `json:"inConfiguration,omitempty"`
	CreatedDate            string               `json:"createdDate,omitempty"`
	CreatedBy              string               `json:"createdBy,omitempty"`
	UpdatedDate            string               `json:"updatedDate,omitempty"`
	LastDeployedDate       string               `json:"lastDeployedDate,omitempty"`
	UpdatedBy              string               `json:"updatedBy,omitempty"`
	ManageFirmware         bool                 `json:"manageFirmware,omitempty"`
	UseDefaultCatalog      bool                 `json:"useDefaultCatalog,omitempty"`
	FirmwareRepository     FirmwareRepository   `json:"firmwareRepository,omitempty"`
	LicenseRepository      LicenseRepository    `json:"licenseRepository,omitempty"`
	AssignedUsers          []AssignedUsers      `json:"assignedUsers,omitempty"`
	AllUsersAllowed        bool                 `json:"allUsersAllowed,omitempty"`
	Category               string               `json:"category,omitempty"`
	Components             []Components         `json:"components,omitempty"`
	Configuration          ConfigurationDetails `json:"configuration,omitempty"`
	ServerCount            int                  `json:"serverCount,omitempty"`
	StorageCount           int                  `json:"storageCount,omitempty"`
	ClusterCount           int                  `json:"clusterCount,omitempty"`
	ServiceCount           int                  `json:"serviceCount,omitempty"`
	SwitchCount            int                  `json:"switchCount,omitempty"`
	VMCount                int                  `json:"vmCount,omitempty"`
	SdnasCount             int                  `json:"sdnasCount,omitempty"`
	BrownfieldTemplateType string               `json:"brownfieldTemplateType,omitempty"`
	Networks               []Networks           `json:"networks,omitempty"`
	NetworksMap            map[string]Networks  `json:"networksMap,omitempty"`
	Draft                  bool                 `json:"draft,omitempty"`
}

type TemplateDetailsFilter added in v1.14.0

type TemplateDetailsFilter struct {
	TemplateDetails []TemplateDetails `json:"serviceTemplate"`
}

TemplateDetailsFilter defines struct for nodepools

type TemplateValid added in v1.14.0

type TemplateValid struct {
	Valid    bool       `json:"valid,omitempty"`
	Messages []Messages `json:"messages,omitempty"`
}

type TreeQuota added in v1.12.0

type TreeQuota struct {
	ID                   string `json:"id,omitempty"`
	FileSysytemID        string `json:"file_system_id"`
	Path                 string `json:"path"`
	Description          string `json:"description,omitempty"`
	HardLimit            int    `json:"hard_limit,omitempty"`
	SoftLimit            int    `json:"soft_limit,omitempty"`
	IsUserQuotaEnforced  bool   `json:"is_user_quotas_enforced,omitempty"`
	GracePeriod          int    `json:"grace_period,omitempty"`
	State                string `json:"state,omitempty"`
	RemainingGracePeriod int    `json:"remaining_grace_period,omitempty"`
	SizeUsed             int    `json:"size_used,omitempty"`
}

TreeQuota defines a struct for tree quota

type TreeQuotaCreate added in v1.12.0

type TreeQuotaCreate struct {
	FileSystemID        string `json:"file_system_id"`
	Path                string `json:"path"`
	Description         string `json:"description,omitempty"`
	HardLimit           int    `json:"hard_limit,omitempty"`
	SoftLimit           int    `json:"soft_limit,omitempty"`
	IsUserQuotaEnforced bool   `json:"is_user_quotas_enforced,omitempty"`
	GracePeriod         int    `json:"grace_period,omitempty"`
}

TreeQuotaCreate defines a struct for Create Tree Quota

type TreeQuotaCreateResponse added in v1.12.0

type TreeQuotaCreateResponse struct {
	ID string `json:"id"`
}

TreeQuotaCreateResponse defines struct for response

type TreeQuotaModify added in v1.12.0

type TreeQuotaModify struct {
	Description          string `json:"description,omitempty"`
	HardLimit            int    `json:"hard_limit,omitempty"`
	SoftLimit            int    `json:"soft_limit,omitempty"`
	IsUserQuotasEnforced bool   `json:"is_user_quotas_enforced,omitempty"`
	GracePeriod          int    `json:"grace_period,omitempty"`
}

TreeQuotaModify defines struct for Modify Tree Quota

type UnmapVolumeSdcParam

type UnmapVolumeSdcParam struct {
	SdcID                string `json:"sdcId,omitempty"`
	IgnoreScsiInitiators string `json:"ignoreScsiInitiators,omitempty"`
	AllSdcs              string `json:"allSdcs,omitempty"`
}

UnmapVolumeSdcParam defines struct for UnmapVolumeSdcParam

type UploadPackageParam added in v1.11.0

type UploadPackageParam struct {
	FilePath string `json:"file_path"`
}

UploadPackageParam defines struct for Upload Package

type User

type User struct {
	SystemID               string  `json:"systemId"`
	UserRole               string  `json:"userRole"`
	PasswordChangeRequired bool    `json:"passwordChangeRequired"`
	Name                   string  `json:"name"`
	ID                     string  `json:"id"`
	Links                  []*Link `json:"links"`
}

User defines struct of User for PowerFlex array

type UserParam added in v1.12.0

type UserParam struct {
	Name     string `json:"name"`
	UserRole string `json:"userRole"`
	Password string `json:"password"`
}

UserParam defines struct for creating a new user on the pflex array.

type UserResp added in v1.12.0

type UserResp struct {
	ID string `json:"id"`
}

UserResp defines struct for the response which you get after creating the user.

type UserRoleParam added in v1.12.0

type UserRoleParam struct {
	UserRole string `json:"userRole"`
}

UserRoleParam defines struct for changing the user role.

type VTree

type VTree struct {
	ID            string  `json:"id"`
	Name          string  `json:"name"`
	BaseVolumeID  string  `json:"baseVolumeId"`
	StoragePoolID string  `json:"storagePoolId"`
	Links         []*Link `json:"links"`
}

VTree defines struct for VTree

type VTreeDetails added in v1.12.0

type VTreeDetails struct {
	CompressionMethod  string             `json:"compressionMethod"`
	DataLayout         string             `json:"dataLayout"`
	ID                 string             `json:"id"`
	InDeletion         bool               `json:"inDeletion"`
	Name               string             `json:"name"`
	RootVolumes        []string           `json:"rootVolumes"`
	StoragePoolID      string             `json:"storagePoolId"`
	Links              []*Link            `json:"links"`
	VtreeMigrationInfo VTreeMigrationInfo `json:"vtreeMigrationInfo"`
}

VTreeDetails defines struct for VTrees

type VTreeMigrationInfo added in v1.12.0

type VTreeMigrationInfo struct {
	DestinationStoragePoolID string `json:"destinationStoragePoolId"`
	MigrationPauseReason     string `json:"migrationPauseReason"`
	MigrationQueuePosition   int64  `json:"migrationQueuePosition"`
	MigrationStatus          string `json:"migrationStatus"`
	SourceStoragePoolID      string `json:"sourceStoragePoolId"`
	ThicknessConversionType  string `json:"thicknessConversionType"`
}

VTreeMigrationInfo defines struct for VTree migration

type VTreeQueryBySelectedIdsParam added in v1.12.0

type VTreeQueryBySelectedIdsParam struct {
	IDs []string `json:"ids"`
}

VTreeQueryBySelectedIdsParam defines struct for specifying Vtree IDs

type VdsConfiguration added in v1.14.0

type VdsConfiguration struct {
	Datacenter                     Datacenter                       `json:"datacenter,omitempty"`
	PortGroupOption                string                           `json:"portGroupOption,omitempty"`
	PortGroupCreationOption        string                           `json:"portGroupCreationOption,omitempty"`
	VdsSettings                    []VdsSettings                    `json:"vdsSettings,omitempty"`
	VdsNetworkMtuSizeConfiguration []VdsNetworkMtuSizeConfiguration `json:"vdsNetworkMtuSizeConfiguration,omitempty"`
	VdsNetworkMTUSizeConfiguration []VdsNetworkMTUSizeConfiguration `json:"vdsNetworkMTUSizeConfiguration,omitempty"`
}

type VdsNetworkMTUSizeConfiguration added in v1.14.0

type VdsNetworkMTUSizeConfiguration struct {
	ID    string `json:"id,omitempty"`
	Value string `json:"value,omitempty"`
}

type VdsNetworkMtuSizeConfiguration added in v1.14.0

type VdsNetworkMtuSizeConfiguration struct {
	ID    string `json:"id,omitempty"`
	Value string `json:"value,omitempty"`
}

type VdsSettings added in v1.14.0

type VdsSettings struct {
	ID          string       `json:"id,omitempty"`
	DisplayName string       `json:"displayName,omitempty"`
	Name        string       `json:"name,omitempty"`
	Value       string       `json:"value,omitempty"`
	PortGroups  []PortGroups `json:"portGroups,omitempty"`
}

type VirtualDisks added in v1.14.0

type VirtualDisks struct {
	PhysicalDisks         []string             `json:"physicalDisks,omitempty"`
	VirtualDiskFqdd       string               `json:"virtualDiskFqdd,omitempty"`
	RaidLevel             string               `json:"raidLevel,omitempty"`
	RollUpStatus          string               `json:"rollUpStatus,omitempty"`
	Controller            string               `json:"controller,omitempty"`
	ControllerProductName string               `json:"controllerProductName,omitempty"`
	Configuration         ConfigurationDetails `json:"configuration,omitempty"`
	MediaType             string               `json:"mediaType,omitempty"`
	EncryptionType        string               `json:"encryptionType,omitempty"`
}

type Vms added in v1.14.0

type Vms struct {
	CertificateName string `json:"certificateName,omitempty"`
	VMModel         string `json:"vmModel,omitempty"`
	VMIpaddress     string `json:"vmIpaddress,omitempty"`
	VMManufacturer  string `json:"vmManufacturer,omitempty"`
	VMServiceTag    string `json:"vmServiceTag,omitempty"`
}

type Volume

type Volume struct {
	StoragePoolID                      string           `json:"storagePoolId"`
	UseRmCache                         bool             `json:"useRmcache"`
	MappingToAllSdcsEnabled            bool             `json:"mappingToAllSdcsEnabled"`
	MappedSdcInfo                      []*MappedSdcInfo `json:"mappedSdcInfo"`
	IsObfuscated                       bool             `json:"isObfuscated"`
	VolumeType                         string           `json:"volumeType"`
	ConsistencyGroupID                 string           `json:"consistencyGroupId"`
	VTreeID                            string           `json:"vtreeId"`
	AncestorVolumeID                   string           `json:"ancestorVolumeId"`
	MappedScsiInitiatorInfo            string           `json:"mappedScsiInitiatorInfo"`
	SizeInKb                           int              `json:"sizeInKb"`
	CreationTime                       int              `json:"creationTime"`
	Name                               string           `json:"name"`
	ID                                 string           `json:"id"`
	DataLayout                         string           `json:"dataLayout"`
	NotGenuineSnapshot                 bool             `json:"notGenuineSnapshot"`
	AccessModeLimit                    string           `json:"accessModeLimit"`
	SecureSnapshotExpTime              int              `json:"secureSnapshotExpTime"`
	ManagedBy                          string           `json:"managedBy"`
	LockedAutoSnapshot                 bool             `json:"lockedAutoSnapshot"`
	LockedAutoSnapshotMarkedForRemoval bool             `json:"lockedAutoSnapshotMarkedForRemoval"`
	CompressionMethod                  string           `json:"compressionMethod"`
	TimeStampIsAccurate                bool             `json:"timeStampIsAccurate"`
	OriginalExpiryTime                 int              `json:"originalExpiryTime"`
	VolumeReplicationState             string           `json:"volumeReplicationState"`
	ReplicationJournalVolume           bool             `json:"replicationJournalVolume"`
	ReplicationTimeStamp               int              `json:"replicationTimeStamp"`
	Links                              []*Link          `json:"links"`
}

Volume defines struct for Volume

type VolumeList added in v1.14.0

type VolumeList struct {
	ID                string                 `json:"id,omitempty"`
	Name              string                 `json:"name,omitempty"`
	VolumeType        string                 `json:"volumeType,omitempty"`
	StoragePoolID     string                 `json:"storagePoolId,omitempty"`
	DataLayout        string                 `json:"dataLayout,omitempty"`
	CompressionMethod string                 `json:"compressionMethod,omitempty"`
	SizeInKb          int                    `json:"sizeInKb,omitempty"`
	MappedSdcInfo     []MappedSdcInfoDetails `json:"mappedSdcInfo,omitempty"`
	VolumeClass       string                 `json:"volumeClass,omitempty"`
}

type VolumeParam

type VolumeParam struct {
	ProtectionDomainID string `json:"protectionDomainId,omitempty"`
	StoragePoolID      string `json:"storagePoolId,omitempty"`
	UseRmCache         string `json:"useRmcache,omitempty"`
	VolumeType         string `json:"volumeType,omitempty"`
	VolumeSizeInKb     string `json:"volumeSizeInKb,omitempty"`
	Name               string `json:"name,omitempty"`
	CompressionMethod  string `json:"compressionMethod,omitempty"`
	// contains filtered or unexported fields
}

VolumeParam defines struct for VolumeParam

func (*VolumeParam) MetaData added in v1.3.0

func (vp *VolumeParam) MetaData() http.Header

MetaData returns the metadata headers.

type VolumeQeryBySelectedIdsParam

type VolumeQeryBySelectedIdsParam struct {
	IDs []string `json:"ids"`
}

VolumeQeryBySelectedIdsParam defines struct for VolumeQeryBySelectedIdsParam

type VolumeQeryIDByKeyParam added in v1.7.0

type VolumeQeryIDByKeyParam struct {
	Name string `json:"name"`
}

VolumeQeryIDByKeyParam defines struct for VolumeQeryIDByKeyParam

type VolumeResp

type VolumeResp struct {
	ID string `json:"id"`
}

VolumeResp defines struct for SetVolumeNameParam

type VolumeStatistics added in v1.2.0

type VolumeStatistics struct {
	UserDataReadBwc         BWC      `json:"userDataReadBwc"`
	UserDataWriteBwc        BWC      `json:"userDataWriteBwc"`
	UserDataTrimBwc         BWC      `json:"userDataTrimBwc"`
	UserDataSdcReadLatency  BWC      `json:"userDataSdcReadLatency"`
	UserDataSdcWriteLatency BWC      `json:"userDataSdcWriteLatency"`
	UserDataSdcTrimLatency  BWC      `json:"userDataSdcTrimLatency"`
	MappedSdcIds            []string `json:"mappedSdcIds"`
	NumOfMappedSdcs         int      `json:"numOfMappedSdcs"`
}

VolumeStatistics defines struct of Statistics for PowerFlex volume

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL