types

package
v0.37.1 Latest Latest
Warning

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

Go to latest
Published: Apr 18, 2024 License: Apache-2.0 Imports: 3 Imported by: 81

Documentation

Index

Constants

View Source
const (
	// Policy applied successfully.
	PbmAssociateAndApplyPolicyStatusPolicyStatusSuccess = PbmAssociateAndApplyPolicyStatusPolicyStatus("success")
	// Policy cannot be applied
	PbmAssociateAndApplyPolicyStatusPolicyStatusFailed = PbmAssociateAndApplyPolicyStatusPolicyStatus("failed")
	// Policy cannot be applied
	PbmAssociateAndApplyPolicyStatusPolicyStatusInvalid = PbmAssociateAndApplyPolicyStatusPolicyStatus("invalid")
)
View Source
const (
	// Indicates a full or partial range of values (`PbmCapabilityRange`).
	//
	// A full range specifies both <code>min</code> and <code>max</code> values.
	// A partial range specifies one or the other, <code>min</code> or <code>max</code>.
	PbmBuiltinGenericTypeVMW_RANGE = PbmBuiltinGenericType("VMW_RANGE")
	// Indicates a single value or a discrete set of values
	// (`PbmCapabilityDiscreteSet`).
	PbmBuiltinGenericTypeVMW_SET = PbmBuiltinGenericType("VMW_SET")
)
View Source
const (
	// Unsigned long value.
	//
	// This datatype supports the following constraint values.
	//     - Single value
	//     - Full or partial range of values (`PbmCapabilityRange`)
	//     - Discrete set of values (`PbmCapabilityDiscreteSet`)
	PbmBuiltinTypeXSD_LONG = PbmBuiltinType("XSD_LONG")
	// Datatype not supported.
	PbmBuiltinTypeXSD_SHORT = PbmBuiltinType("XSD_SHORT")
	// Datatype not supported.
	//
	// Use XSD\_INT instead.
	PbmBuiltinTypeXSD_INTEGER = PbmBuiltinType("XSD_INTEGER")
	// Integer value.
	//
	// This datatype supports the following constraint values.
	//     - Single value
	//     - Full or partial range of values (`PbmCapabilityRange`)
	//     - Discrete set of values (`PbmCapabilityDiscreteSet`)
	PbmBuiltinTypeXSD_INT = PbmBuiltinType("XSD_INT")
	// String value.
	//
	// This datatype supports a single value
	// or a discrete set of values (`PbmCapabilityDiscreteSet`).
	PbmBuiltinTypeXSD_STRING = PbmBuiltinType("XSD_STRING")
	// Boolean value.
	PbmBuiltinTypeXSD_BOOLEAN = PbmBuiltinType("XSD_BOOLEAN")
	// Double precision floating point value.
	//
	// This datatype supports the following
	// constraint values.
	//     - Single value
	//     - Full or partial range of values (`PbmCapabilityRange`)
	//     - Discrete set of values (`PbmCapabilityDiscreteSet`)
	PbmBuiltinTypeXSD_DOUBLE = PbmBuiltinType("XSD_DOUBLE")
	// Date and time value.
	PbmBuiltinTypeXSD_DATETIME = PbmBuiltinType("XSD_DATETIME")
	// Timespan value (`PbmCapabilityTimeSpan`).
	//
	// This datatype supports
	// the following constraint values.
	//     - Single value
	//     - Full or partial range of values (`PbmCapabilityRange`)
	//     - Discrete set of values (`PbmCapabilityDiscreteSet`)
	PbmBuiltinTypeVMW_TIMESPAN = PbmBuiltinType("VMW_TIMESPAN")
	PbmBuiltinTypeVMW_POLICY   = PbmBuiltinType("VMW_POLICY")
)
View Source
const (
	// Constraints and capabilities expressed in units of seconds.
	PbmCapabilityTimeUnitTypeSECONDS = PbmCapabilityTimeUnitType("SECONDS")
	// Constraints and capabilities expressed in units of minutes.
	PbmCapabilityTimeUnitTypeMINUTES = PbmCapabilityTimeUnitType("MINUTES")
	// Constraints and capabilities expressed in units of hours.
	PbmCapabilityTimeUnitTypeHOURS = PbmCapabilityTimeUnitType("HOURS")
	// Constraints and capabilities expressed in units of days.
	PbmCapabilityTimeUnitTypeDAYS = PbmCapabilityTimeUnitType("DAYS")
	// Constraints and capabilities expressed in units of weeks.
	PbmCapabilityTimeUnitTypeWEEKS = PbmCapabilityTimeUnitType("WEEKS")
	// Constraints and capabilities expressed in units of months.
	PbmCapabilityTimeUnitTypeMONTHS = PbmCapabilityTimeUnitType("MONTHS")
	// Constraints and capabilities expressed in units of years.
	PbmCapabilityTimeUnitTypeYEARS = PbmCapabilityTimeUnitType("YEARS")
)
View Source
const (
	// Compliance calculation is in progress.
	PbmComplianceResultComplianceTaskStatusInProgress = PbmComplianceResultComplianceTaskStatus("inProgress")
	// Compliance calculation has succeeded.
	PbmComplianceResultComplianceTaskStatusSuccess = PbmComplianceResultComplianceTaskStatus("success")
	// Compliance calculation failed due to some exception.
	PbmComplianceResultComplianceTaskStatusFailed = PbmComplianceResultComplianceTaskStatus("failed")
)
View Source
const (
	// Entity is in compliance.
	PbmComplianceStatusCompliant = PbmComplianceStatus("compliant")
	// Entity is out of compliance.
	PbmComplianceStatusNonCompliant = PbmComplianceStatus("nonCompliant")
	// Compliance status of the entity is not known.
	PbmComplianceStatusUnknown = PbmComplianceStatus("unknown")
	// Compliance computation is not applicable for this entity,
	// because it does not have any storage requirements that
	// apply to the object-based datastore on which this entity is placed.
	PbmComplianceStatusNotApplicable = PbmComplianceStatus("notApplicable")
	// This is the same as `PbmComplianceResult.mismatch`
	// variable.
	//
	// Compliance status becomes out-of-date when the profile
	// associated with the entity is edited and not applied. The compliance
	// status will remain in out-of-date compliance status until the latest
	// policy is applied to the entity.
	PbmComplianceStatusOutOfDate = PbmComplianceStatus("outOfDate")
)
View Source
const (
	// Refers to SMS keystore
	PbmDebugManagerKeystoreNameSMS = PbmDebugManagerKeystoreName("SMS")
	// Refers to TRUSTED\_ROOTS keystore.
	PbmDebugManagerKeystoreNameTRUSTED_ROOTS = PbmDebugManagerKeystoreName("TRUSTED_ROOTS")
)
View Source
const (
	// For file share: 'red' if the file server for this file share is in error
	// state or any of its backing vSAN objects are degraded.
	//
	// For FCD: 'red' if the datastore on which the FCD resides is not
	// accessible from any of the hosts it is mounted.
	PbmHealthStatusForEntityRed = PbmHealthStatusForEntity("red")
	// For file share: 'yellow' if some backing objects are repairing, i.e.
	//
	// warning state.
	// For FCD: 'yellow' if the datastore on which the entity resides is
	// accessible only from some of the hosts it is mounted but not all.
	PbmHealthStatusForEntityYellow = PbmHealthStatusForEntity("yellow")
	// For file share: 'green' if the file server for this file share is
	// running properly and all its backing vSAN objects are healthy.
	//
	// For FCD: 'green' if the datastore on which the entity resides
	// is accessible from all the hosts it is mounted.
	PbmHealthStatusForEntityGreen = PbmHealthStatusForEntity("green")
	// If the health status of a file share is unknown, not valid for FCD.
	PbmHealthStatusForEntityUnknown = PbmHealthStatusForEntity("unknown")
)
View Source
const (
	PbmIofilterInfoFilterTypeINSPECTION         = PbmIofilterInfoFilterType("INSPECTION")
	PbmIofilterInfoFilterTypeCOMPRESSION        = PbmIofilterInfoFilterType("COMPRESSION")
	PbmIofilterInfoFilterTypeENCRYPTION         = PbmIofilterInfoFilterType("ENCRYPTION")
	PbmIofilterInfoFilterTypeREPLICATION        = PbmIofilterInfoFilterType("REPLICATION")
	PbmIofilterInfoFilterTypeCACHE              = PbmIofilterInfoFilterType("CACHE")
	PbmIofilterInfoFilterTypeDATAPROVIDER       = PbmIofilterInfoFilterType("DATAPROVIDER")
	PbmIofilterInfoFilterTypeDATASTOREIOCONTROL = PbmIofilterInfoFilterType("DATASTOREIOCONTROL")
)
View Source
const (
	PbmLineOfServiceInfoLineOfServiceEnumINSPECTION           = PbmLineOfServiceInfoLineOfServiceEnum("INSPECTION")
	PbmLineOfServiceInfoLineOfServiceEnumCOMPRESSION          = PbmLineOfServiceInfoLineOfServiceEnum("COMPRESSION")
	PbmLineOfServiceInfoLineOfServiceEnumENCRYPTION           = PbmLineOfServiceInfoLineOfServiceEnum("ENCRYPTION")
	PbmLineOfServiceInfoLineOfServiceEnumREPLICATION          = PbmLineOfServiceInfoLineOfServiceEnum("REPLICATION")
	PbmLineOfServiceInfoLineOfServiceEnumCACHING              = PbmLineOfServiceInfoLineOfServiceEnum("CACHING")
	PbmLineOfServiceInfoLineOfServiceEnumPERSISTENCE          = PbmLineOfServiceInfoLineOfServiceEnum("PERSISTENCE")
	PbmLineOfServiceInfoLineOfServiceEnumDATA_PROVIDER        = PbmLineOfServiceInfoLineOfServiceEnum("DATA_PROVIDER")
	PbmLineOfServiceInfoLineOfServiceEnumDATASTORE_IO_CONTROL = PbmLineOfServiceInfoLineOfServiceEnum("DATASTORE_IO_CONTROL")
	PbmLineOfServiceInfoLineOfServiceEnumDATA_PROTECTION      = PbmLineOfServiceInfoLineOfServiceEnum("DATA_PROTECTION")
)
View Source
const (
	// Modifies logging level of com.vmware.pbm package.
	PbmLoggingConfigurationComponentPbm = PbmLoggingConfigurationComponent("pbm")
	// Modifies logging level of com.vmware.vslm package.
	PbmLoggingConfigurationComponentVslm = PbmLoggingConfigurationComponent("vslm")
	// Modifies logging level of com.vmware.vim.sms package.
	PbmLoggingConfigurationComponentSms = PbmLoggingConfigurationComponent("sms")
	// Modifies logging level of com.vmware.spbm package.
	PbmLoggingConfigurationComponentSpbm = PbmLoggingConfigurationComponent("spbm")
	// Modifies logging level of com.vmware.sps package.
	PbmLoggingConfigurationComponentSps = PbmLoggingConfigurationComponent("sps")
	// Modifies logging level of httpclient wire header.
	PbmLoggingConfigurationComponentHttpclient_header = PbmLoggingConfigurationComponent("httpclient_header")
	// Modifies logging level of httpclient wire content.
	PbmLoggingConfigurationComponentHttpclient_content = PbmLoggingConfigurationComponent("httpclient_content")
	// Modifies logging level of com.vmware.vim.vmomi package.
	PbmLoggingConfigurationComponentVmomi = PbmLoggingConfigurationComponent("vmomi")
)
View Source
const (
	// Refers to INFO level logging
	PbmLoggingConfigurationLogLevelINFO = PbmLoggingConfigurationLogLevel("INFO")
	// Refers to DEBUG level logging.
	PbmLoggingConfigurationLogLevelDEBUG = PbmLoggingConfigurationLogLevel("DEBUG")
	// Refers to TRACE level logging.
	PbmLoggingConfigurationLogLevelTRACE = PbmLoggingConfigurationLogLevel("TRACE")
)
View Source
const (
	// Indicates a virtual machine, not including the disks, identified by the virtual machine
	// identifier _virtual-machine-mor_.
	PbmObjectTypeVirtualMachine = PbmObjectType("virtualMachine")
	// Indicates the virtual machine and all its disks, identified by the virtual machine
	// identifier _virtual-machine-mor_.
	PbmObjectTypeVirtualMachineAndDisks = PbmObjectType("virtualMachineAndDisks")
	// Indicates a virtual disk, identified by disk key
	// (_virtual-machine-mor_:_disk-key_).
	PbmObjectTypeVirtualDiskId = PbmObjectType("virtualDiskId")
	// Indicates a virtual disk, identified by UUID - for First Class Storage Object support.
	PbmObjectTypeVirtualDiskUUID = PbmObjectType("virtualDiskUUID")
	// Indicates a datastore.
	PbmObjectTypeDatastore = PbmObjectType("datastore")
	// Indicates a VSAN object
	PbmObjectTypeVsanObjectId = PbmObjectType("vsanObjectId")
	// Indicates a file service
	PbmObjectTypeFileShareId = PbmObjectType("fileShareId")
	// Unknown object type.
	PbmObjectTypeUnknown = PbmObjectType("unknown")
)
View Source
const (
	// Indicates create operation of an entity.
	PbmOperationCREATE = PbmOperation("CREATE")
	// Indicates register operation of an entity.
	PbmOperationREGISTER = PbmOperation("REGISTER")
	// Indicates reconfigure operation of an entity.
	PbmOperationRECONFIGURE = PbmOperation("RECONFIGURE")
	// Indicates migrate operation of an entity.
	PbmOperationMIGRATE = PbmOperation("MIGRATE")
	// Indicates clone operation of an entity.
	PbmOperationCLONE = PbmOperation("CLONE")
)
View Source
const (
	// Space required is fully allocated and initialized.
	//
	// It is wiped clean of any previous content on the
	// physical media. Gives faster runtime IO performance.
	PbmPolicyAssociationVolumeAllocationTypeFullyInitialized = PbmPolicyAssociationVolumeAllocationType("FullyInitialized")
	// Space required is fully allocated.
	//
	// It may contain
	// stale data on the physical media.
	PbmPolicyAssociationVolumeAllocationTypeReserveSpace = PbmPolicyAssociationVolumeAllocationType("ReserveSpace")
	// Space required is allocated and zeroed on demand
	// as the space is used.
	PbmPolicyAssociationVolumeAllocationTypeConserveSpaceWhenPossible = PbmPolicyAssociationVolumeAllocationType("ConserveSpaceWhenPossible")
)
View Source
const (
	// Indicates a storage requirement.
	//
	// Requirements are based on
	// storage capabilities.
	PbmProfileCategoryEnumREQUIREMENT = PbmProfileCategoryEnum("REQUIREMENT")
	// Indicates a storage capability.
	//
	// Storage capabilities
	// are defined by storage providers.
	PbmProfileCategoryEnumRESOURCE = PbmProfileCategoryEnum("RESOURCE")
	// Indicates a data service policy that can be embedded into
	// another storage policy.
	//
	// Policies of this type can't be assigned to
	// Virtual Machines or Virtual Disks.
	PbmProfileCategoryEnumDATA_SERVICE_POLICY = PbmProfileCategoryEnum("DATA_SERVICE_POLICY")
)
View Source
const (
	// Indicates the system pre-created editable VSAN default profile.
	PbmSystemCreatedProfileTypeVsanDefaultProfile = PbmSystemCreatedProfileType("VsanDefaultProfile")
	// Indicates the system pre-created non-editable default profile
	// for VVOL datastores.
	PbmSystemCreatedProfileTypeVVolDefaultProfile = PbmSystemCreatedProfileType("VVolDefaultProfile")
	// Indicates the system pre-created non-editable default profile
	// for PMem datastores
	PbmSystemCreatedProfileTypePmemDefaultProfile = PbmSystemCreatedProfileType("PmemDefaultProfile")
	// Indicates the system pre-created non-editable VMC default profile.
	PbmSystemCreatedProfileTypeVmcManagementProfile = PbmSystemCreatedProfileType("VmcManagementProfile")
	// Indicates the system pre-created non-editable VSANMAX default profile.
	PbmSystemCreatedProfileTypeVsanMaxDefaultProfile = PbmSystemCreatedProfileType("VsanMaxDefaultProfile")
)
View Source
const (
	// Indicates create operation of a virtual machine.
	PbmVmOperationCREATE = PbmVmOperation("CREATE")
	// Indicates reconfigure operation of a virtual machine.
	PbmVmOperationRECONFIGURE = PbmVmOperation("RECONFIGURE")
	// Indicates migrate operation of a virtual machine.
	PbmVmOperationMIGRATE = PbmVmOperation("MIGRATE")
	// Indicates clone operation of a virtual machine.
	PbmVmOperationCLONE = PbmVmOperation("CLONE")
)
View Source
const (
	// meta-data volume
	PbmVvolTypeConfig = PbmVvolType("Config")
	// vmdk volume
	PbmVvolTypeData = PbmVvolType("Data")
	// swap volume
	PbmVvolTypeSwap = PbmVvolType("Swap")
)
View Source
const (
	PbmCapabilityOperatorNOT = PbmCapabilityOperator("NOT")
)
View Source
const (
	// Indicates resources that support storage profiles.
	PbmProfileResourceTypeEnumSTORAGE = PbmProfileResourceTypeEnum("STORAGE")
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ArrayOfPbmCapabilityConstraintInstance

type ArrayOfPbmCapabilityConstraintInstance struct {
	PbmCapabilityConstraintInstance []PbmCapabilityConstraintInstance `xml:"PbmCapabilityConstraintInstance,omitempty" json:"_value"`
}

A boxed array of `PbmCapabilityConstraintInstance`. To be used in `Any` placeholders.

type ArrayOfPbmCapabilityInstance

type ArrayOfPbmCapabilityInstance struct {
	PbmCapabilityInstance []PbmCapabilityInstance `xml:"PbmCapabilityInstance,omitempty" json:"_value"`
}

A boxed array of `PbmCapabilityInstance`. To be used in `Any` placeholders.

type ArrayOfPbmCapabilityMetadata

type ArrayOfPbmCapabilityMetadata struct {
	PbmCapabilityMetadata []PbmCapabilityMetadata `xml:"PbmCapabilityMetadata,omitempty" json:"_value"`
}

A boxed array of `PbmCapabilityMetadata`. To be used in `Any` placeholders.

type ArrayOfPbmCapabilityMetadataPerCategory

type ArrayOfPbmCapabilityMetadataPerCategory struct {
	PbmCapabilityMetadataPerCategory []PbmCapabilityMetadataPerCategory `xml:"PbmCapabilityMetadataPerCategory,omitempty" json:"_value"`
}

A boxed array of `PbmCapabilityMetadataPerCategory`. To be used in `Any` placeholders.

type ArrayOfPbmCapabilityPropertyInstance

type ArrayOfPbmCapabilityPropertyInstance struct {
	PbmCapabilityPropertyInstance []PbmCapabilityPropertyInstance `xml:"PbmCapabilityPropertyInstance,omitempty" json:"_value"`
}

A boxed array of `PbmCapabilityPropertyInstance`. To be used in `Any` placeholders.

type ArrayOfPbmCapabilityPropertyMetadata

type ArrayOfPbmCapabilityPropertyMetadata struct {
	PbmCapabilityPropertyMetadata []PbmCapabilityPropertyMetadata `xml:"PbmCapabilityPropertyMetadata,omitempty" json:"_value"`
}

A boxed array of `PbmCapabilityPropertyMetadata`. To be used in `Any` placeholders.

type ArrayOfPbmCapabilitySchema

type ArrayOfPbmCapabilitySchema struct {
	PbmCapabilitySchema []PbmCapabilitySchema `xml:"PbmCapabilitySchema,omitempty" json:"_value"`
}

A boxed array of `PbmCapabilitySchema`. To be used in `Any` placeholders.

type ArrayOfPbmCapabilitySubProfile

type ArrayOfPbmCapabilitySubProfile struct {
	PbmCapabilitySubProfile []PbmCapabilitySubProfile `xml:"PbmCapabilitySubProfile,omitempty" json:"_value"`
}

A boxed array of `PbmCapabilitySubProfile`. To be used in `Any` placeholders.

type ArrayOfPbmCapabilityVendorNamespaceInfo

type ArrayOfPbmCapabilityVendorNamespaceInfo struct {
	PbmCapabilityVendorNamespaceInfo []PbmCapabilityVendorNamespaceInfo `xml:"PbmCapabilityVendorNamespaceInfo,omitempty" json:"_value"`
}

A boxed array of `PbmCapabilityVendorNamespaceInfo`. To be used in `Any` placeholders.

type ArrayOfPbmCapabilityVendorResourceTypeInfo

type ArrayOfPbmCapabilityVendorResourceTypeInfo struct {
	PbmCapabilityVendorResourceTypeInfo []PbmCapabilityVendorResourceTypeInfo `xml:"PbmCapabilityVendorResourceTypeInfo,omitempty" json:"_value"`
}

A boxed array of `PbmCapabilityVendorResourceTypeInfo`. To be used in `Any` placeholders.

type ArrayOfPbmCompliancePolicyStatus

type ArrayOfPbmCompliancePolicyStatus struct {
	PbmCompliancePolicyStatus []PbmCompliancePolicyStatus `xml:"PbmCompliancePolicyStatus,omitempty" json:"_value"`
}

A boxed array of `PbmCompliancePolicyStatus`. To be used in `Any` placeholders.

type ArrayOfPbmComplianceResult

type ArrayOfPbmComplianceResult struct {
	PbmComplianceResult []PbmComplianceResult `xml:"PbmComplianceResult,omitempty" json:"_value"`
}

A boxed array of `PbmComplianceResult`. To be used in `Any` placeholders.

type ArrayOfPbmDatastoreSpaceStatistics

type ArrayOfPbmDatastoreSpaceStatistics struct {
	PbmDatastoreSpaceStatistics []PbmDatastoreSpaceStatistics `xml:"PbmDatastoreSpaceStatistics,omitempty" json:"_value"`
}

A boxed array of `PbmDatastoreSpaceStatistics`. To be used in `Any` placeholders.

type ArrayOfPbmDefaultProfileInfo

type ArrayOfPbmDefaultProfileInfo struct {
	PbmDefaultProfileInfo []PbmDefaultProfileInfo `xml:"PbmDefaultProfileInfo,omitempty" json:"_value"`
}

A boxed array of `PbmDefaultProfileInfo`. To be used in `Any` placeholders.

type ArrayOfPbmFaultNoPermissionEntityPrivileges added in v0.31.0

type ArrayOfPbmFaultNoPermissionEntityPrivileges struct {
	PbmFaultNoPermissionEntityPrivileges []PbmFaultNoPermissionEntityPrivileges `xml:"PbmFaultNoPermissionEntityPrivileges,omitempty" json:"_value"`
}

A boxed array of `PbmFaultNoPermissionEntityPrivileges`. To be used in `Any` placeholders.

type ArrayOfPbmLoggingConfiguration added in v0.31.0

type ArrayOfPbmLoggingConfiguration struct {
	PbmLoggingConfiguration []PbmLoggingConfiguration `xml:"PbmLoggingConfiguration,omitempty" json:"_value"`
}

A boxed array of `PbmLoggingConfiguration`. To be used in `Any` placeholders.

type ArrayOfPbmPlacementCompatibilityResult

type ArrayOfPbmPlacementCompatibilityResult struct {
	PbmPlacementCompatibilityResult []PbmPlacementCompatibilityResult `xml:"PbmPlacementCompatibilityResult,omitempty" json:"_value"`
}

A boxed array of `PbmPlacementCompatibilityResult`. To be used in `Any` placeholders.

type ArrayOfPbmPlacementHub

type ArrayOfPbmPlacementHub struct {
	PbmPlacementHub []PbmPlacementHub `xml:"PbmPlacementHub,omitempty" json:"_value"`
}

A boxed array of `PbmPlacementHub`. To be used in `Any` placeholders.

type ArrayOfPbmPlacementMatchingResources

type ArrayOfPbmPlacementMatchingResources struct {
	PbmPlacementMatchingResources []BasePbmPlacementMatchingResources `xml:"PbmPlacementMatchingResources,omitempty,typeattr" json:"_value"`
}

A boxed array of `PbmPlacementMatchingResources`. To be used in `Any` placeholders.

type ArrayOfPbmPlacementRequirement

type ArrayOfPbmPlacementRequirement struct {
	PbmPlacementRequirement []BasePbmPlacementRequirement `xml:"PbmPlacementRequirement,omitempty,typeattr" json:"_value"`
}

A boxed array of `PbmPlacementRequirement`. To be used in `Any` placeholders.

type ArrayOfPbmPlacementResourceUtilization

type ArrayOfPbmPlacementResourceUtilization struct {
	PbmPlacementResourceUtilization []PbmPlacementResourceUtilization `xml:"PbmPlacementResourceUtilization,omitempty" json:"_value"`
}

A boxed array of `PbmPlacementResourceUtilization`. To be used in `Any` placeholders.

type ArrayOfPbmProfile

type ArrayOfPbmProfile struct {
	PbmProfile []BasePbmProfile `xml:"PbmProfile,omitempty,typeattr" json:"_value"`
}

A boxed array of `PbmProfile`. To be used in `Any` placeholders.

type ArrayOfPbmProfileId

type ArrayOfPbmProfileId struct {
	PbmProfileId []PbmProfileId `xml:"PbmProfileId,omitempty" json:"_value"`
}

A boxed array of `PbmProfileId`. To be used in `Any` placeholders.

type ArrayOfPbmProfileOperationOutcome

type ArrayOfPbmProfileOperationOutcome struct {
	PbmProfileOperationOutcome []PbmProfileOperationOutcome `xml:"PbmProfileOperationOutcome,omitempty" json:"_value"`
}

A boxed array of `PbmProfileOperationOutcome`. To be used in `Any` placeholders.

type ArrayOfPbmProfileResourceType

type ArrayOfPbmProfileResourceType struct {
	PbmProfileResourceType []PbmProfileResourceType `xml:"PbmProfileResourceType,omitempty" json:"_value"`
}

A boxed array of `PbmProfileResourceType`. To be used in `Any` placeholders.

type ArrayOfPbmProfileType

type ArrayOfPbmProfileType struct {
	PbmProfileType []PbmProfileType `xml:"PbmProfileType,omitempty" json:"_value"`
}

A boxed array of `PbmProfileType`. To be used in `Any` placeholders.

type ArrayOfPbmQueryProfileResult

type ArrayOfPbmQueryProfileResult struct {
	PbmQueryProfileResult []PbmQueryProfileResult `xml:"PbmQueryProfileResult,omitempty" json:"_value"`
}

A boxed array of `PbmQueryProfileResult`. To be used in `Any` placeholders.

type ArrayOfPbmQueryReplicationGroupResult

type ArrayOfPbmQueryReplicationGroupResult struct {
	PbmQueryReplicationGroupResult []PbmQueryReplicationGroupResult `xml:"PbmQueryReplicationGroupResult,omitempty" json:"_value"`
}

A boxed array of `PbmQueryReplicationGroupResult`. To be used in `Any` placeholders.

type ArrayOfPbmRollupComplianceResult

type ArrayOfPbmRollupComplianceResult struct {
	PbmRollupComplianceResult []PbmRollupComplianceResult `xml:"PbmRollupComplianceResult,omitempty" json:"_value"`
}

A boxed array of `PbmRollupComplianceResult`. To be used in `Any` placeholders.

type ArrayOfPbmServerObjectRef

type ArrayOfPbmServerObjectRef struct {
	PbmServerObjectRef []PbmServerObjectRef `xml:"PbmServerObjectRef,omitempty" json:"_value"`
}

A boxed array of `PbmServerObjectRef`. To be used in `Any` placeholders.

type BasePbmCapabilityConstraints

type BasePbmCapabilityConstraints interface {
	GetPbmCapabilityConstraints() *PbmCapabilityConstraints
}

type BasePbmCapabilityProfile

type BasePbmCapabilityProfile interface {
	GetPbmCapabilityProfile() *PbmCapabilityProfile
}

type BasePbmCapabilityProfilePropertyMismatchFault

type BasePbmCapabilityProfilePropertyMismatchFault interface {
	GetPbmCapabilityProfilePropertyMismatchFault() *PbmCapabilityProfilePropertyMismatchFault
}

type BasePbmCapabilityTypeInfo

type BasePbmCapabilityTypeInfo interface {
	GetPbmCapabilityTypeInfo() *PbmCapabilityTypeInfo
}

type BasePbmCompatibilityCheckFault

type BasePbmCompatibilityCheckFault interface {
	GetPbmCompatibilityCheckFault() *PbmCompatibilityCheckFault
}

type BasePbmFault

type BasePbmFault interface {
	GetPbmFault() *PbmFault
}

type BasePbmLineOfServiceInfo

type BasePbmLineOfServiceInfo interface {
	GetPbmLineOfServiceInfo() *PbmLineOfServiceInfo
}

type BasePbmPlacementMatchingResources

type BasePbmPlacementMatchingResources interface {
	GetPbmPlacementMatchingResources() *PbmPlacementMatchingResources
}

type BasePbmPlacementRequirement

type BasePbmPlacementRequirement interface {
	GetPbmPlacementRequirement() *PbmPlacementRequirement
}

type BasePbmProfile

type BasePbmProfile interface {
	GetPbmProfile() *PbmProfile
}

type BasePbmPropertyMismatchFault

type BasePbmPropertyMismatchFault interface {
	GetPbmPropertyMismatchFault() *PbmPropertyMismatchFault
}

type PbmAboutInfo

type PbmAboutInfo struct {
	types.DynamicData

	// Name of the server.
	Name string `xml:"name" json:"name"`
	// Version number.
	Version string `xml:"version" json:"version"`
	// Globally unique identifier associated with this server instance.
	InstanceUuid string `xml:"instanceUuid" json:"instanceUuid"`
}

The `PbmAboutInfo` data object stores identifying data about the Storage Policy Server.

This structure may be used only with operations rendered under `/pbm`.

type PbmAlreadyExists

type PbmAlreadyExists struct {
	PbmFault

	Name string `xml:"name,omitempty" json:"name,omitempty"`
}

An AlreadyExists fault is thrown when an attempt is made to add an element to a collection, if the element's key, name, or identifier already exists in that collection.

This structure may be used only with operations rendered under `/pbm`.

type PbmAlreadyExistsFault added in v0.18.0

type PbmAlreadyExistsFault PbmAlreadyExists

type PbmAssignDefaultRequirementProfileRequestType

type PbmAssignDefaultRequirementProfileRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// The profile that needs to be made default profile.
	Profile PbmProfileId `xml:"profile" json:"profile"`
	// The datastores for which the profile needs to be made as default profile.
	Datastores []PbmPlacementHub `xml:"datastores" json:"datastores"`
}

The parameters of `PbmProfileProfileManager.PbmAssignDefaultRequirementProfile`.

type PbmAssignDefaultRequirementProfileResponse

type PbmAssignDefaultRequirementProfileResponse struct {
}

type PbmAssociateAndApplyPolicyStatusPolicyStatus added in v0.26.0

type PbmAssociateAndApplyPolicyStatusPolicyStatus string

type PbmBuiltinGenericType

type PbmBuiltinGenericType string

The `PbmBuiltinGenericType_enum` enumerated type defines the list of builtin generic datatypes.

See `PbmCapabilityGenericTypeInfo*.*PbmCapabilityGenericTypeInfo.genericTypeName`.

A generic datatype indicates how to interpret a collection of values of a specific datatype (`PbmCapabilityTypeInfo.typeName`).

type PbmBuiltinType

type PbmBuiltinType string

The `PbmBuiltinType_enum` enumerated type defines datatypes for storage profiles.

Property metadata (`PbmCapabilityPropertyMetadata`) uses the builtin types to define data types for storage capabilities and requirements. It may also specify the semantics that are applied to a collection of builtin type values. See `PbmCapabilityTypeInfo`. These semantics are specified as a generic builtin type. See `PbmCapabilityGenericTypeInfo`. The type information determines how capability constraints are interpreted `PbmCapabilityPropertyInstance.value`).

type PbmCapabilityConstraintInstance

type PbmCapabilityConstraintInstance struct {
	types.DynamicData

	// Property instance array for this constraint
	PropertyInstance []PbmCapabilityPropertyInstance `xml:"propertyInstance" json:"propertyInstance"`
}

Constraints on the properties for a single occurrence of a capability.

All properties must satisfy their respective constraints to be compliant.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityConstraints

type PbmCapabilityConstraints struct {
	types.DynamicData
}

The `PbmCapabilityConstraints` data object is the base object for capability subprofile constraints.

This structure may be used only with operations rendered under `/pbm`.

func (*PbmCapabilityConstraints) GetPbmCapabilityConstraints

func (b *PbmCapabilityConstraints) GetPbmCapabilityConstraints() *PbmCapabilityConstraints

type PbmCapabilityDescription

type PbmCapabilityDescription struct {
	types.DynamicData

	// Description of the property value
	Description PbmExtendedElementDescription `xml:"description" json:"description"`
	// Values for the set.
	//
	// must be one of the supported datatypes as
	// defined in `PbmBuiltinType_enum`
	// Must only contain unique values to comply with the Set semantics
	Value types.AnyType `xml:"value,typeattr" json:"value"`
}

A property value with description.

It can be repeated under DiscreteSet. E.g., set of tags, each with description and tag name.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityDiscreteSet

type PbmCapabilityDiscreteSet struct {
	types.DynamicData

	// Array of values for the set.
	//
	// The values must be one of the supported datatypes
	// as defined in `PbmBuiltinType_enum` or `PbmBuiltinGenericType_enum`.
	Values []types.AnyType `xml:"values,typeattr" json:"values"`
}

The `PbmCapabilityDiscreteSet` data object defines a set of values for storage profile property instances (`PbmCapabilityPropertyInstance`).

Use the discrete set type to define a set of values of a supported builtin type (`PbmBuiltinType_enum`), for example a set of integers (XSD\_INT) or a set of unsigned long values (XSD\_LONG). See `PbmBuiltinGenericType_enum*.*VMW_SET`.

A discrete set of values is declared as an array of <code>xsd:anyType</code> values.

  • When you define a property instance for a storage profile requirement and pass an array of values to the Server, you must set the array elements to values of the appropriate datatype.
  • When you read a discrete set from a property instance for a storage profile capability, you must cast the <code>xsd:anyType</code> array element values to the appropriate datatype.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityGenericTypeInfo

type PbmCapabilityGenericTypeInfo struct {
	PbmCapabilityTypeInfo

	// Name of the generic type.
	//
	// Must correspond to one of the values defined in
	// `PbmBuiltinGenericType_enum`.
	GenericTypeName string `xml:"genericTypeName" json:"genericTypeName"`
}

Generic type definition for capabilities.

Indicates how a collection of values of a specific datatype (`PbmCapabilityTypeInfo.typeName`) will be interpreted.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityInstance

type PbmCapabilityInstance struct {
	types.DynamicData

	// Identifier for the capability.
	//
	// The identifier value corresponds to
	// `PbmCapabilityMetadata*.*PbmCapabilityMetadata.id`.
	Id PbmCapabilityMetadataUniqueId `xml:"id" json:"id"`
	// Constraints on the properties that comprise this capability.
	//
	// Each entry represents a constraint on one or more of the properties that
	// constitute this capability. A datum must meet one of the
	// constraints to be compliant.
	Constraint []PbmCapabilityConstraintInstance `xml:"constraint" json:"constraint"`
}

The `PbmCapabilityInstance` data object defines a storage capability instance.

Metadata for the capability is described in `PbmCapabilityMetadata`.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityMetadata

type PbmCapabilityMetadata struct {
	types.DynamicData

	// Unique identifier for the capability.
	Id PbmCapabilityMetadataUniqueId `xml:"id" json:"id"`
	// Capability name and description
	Summary PbmExtendedElementDescription `xml:"summary" json:"summary"`
	// Indicates whether incorporating given capability is mandatory during creation of
	// profile.
	Mandatory *bool `xml:"mandatory" json:"mandatory,omitempty"`
	// The flag hint dictates the interpretation of constraints specified for this capability
	// in a storage policy profile.
	//
	// If hint is false, then constraints will affect placement.
	// If hint is true, constraints will not affect placement,
	// but will still be passed to provisioning operations if the provider understands the
	// relevant namespace. Optional property, false if not set.
	Hint *bool `xml:"hint" json:"hint,omitempty"`
	// Property Id of the key property, if this capability represents a key
	// value pair.
	//
	// Value is empty string if not set.
	KeyId string `xml:"keyId,omitempty" json:"keyId,omitempty"`
	// Flag to indicate if multiple constraints are allowed in the capability
	// instance.
	//
	// False if not set.
	AllowMultipleConstraints *bool `xml:"allowMultipleConstraints" json:"allowMultipleConstraints,omitempty"`
	// Metadata for the properties that comprise this capability.
	PropertyMetadata []PbmCapabilityPropertyMetadata `xml:"propertyMetadata" json:"propertyMetadata"`
}

Metadata for a single unique setting defined by a provider.

A simple setting is a setting with one property. A complex setting contains more than one property.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityMetadataPerCategory

type PbmCapabilityMetadataPerCategory struct {
	types.DynamicData

	// Profile subcategory to which the capability metadata belongs.
	//
	// The subcategory is specified by the storage provider.
	SubCategory string `xml:"subCategory" json:"subCategory"`
	// Capability metadata for this category
	CapabilityMetadata []PbmCapabilityMetadata `xml:"capabilityMetadata" json:"capabilityMetadata"`
}

The `PbmCapabilityMetadataPerCategory` data object defines capability metadata for a profile subcategory.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityMetadataUniqueId

type PbmCapabilityMetadataUniqueId struct {
	types.DynamicData

	// Namespace to which this capability belongs.
	//
	// Must be the same as
	// { @link CapabilityObjectSchema#namespace } defined for this
	// capability
	Namespace string `xml:"namespace" json:"namespace"`
	// unique identifier for this capability within given namespace
	Id string `xml:"id" json:"id"`
}

type PbmCapabilityNamespaceInfo

type PbmCapabilityNamespaceInfo struct {
	types.DynamicData

	// Schema version
	Version string `xml:"version" json:"version"`
	// Schema namespace.
	Namespace string                         `xml:"namespace" json:"namespace"`
	Info      *PbmExtendedElementDescription `xml:"info,omitempty" json:"info,omitempty"`
}

Name space information for the capability metadata schema.

NOTE: Name spaces are required to be globally unique across resource types. A same vendor can register multiple name spaces for same resource type or for different resource type, but the schema namespace URL must be unique for each of these cases. A CapabilityMetadata object is uniquely identified based on the namespace it belongs to and it's unique identifier within that namespace.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityOperator

type PbmCapabilityOperator string

List of operators that are supported for constructing policy.

Currently only tag based properties can use this operator. Other operators can be added as required.

type PbmCapabilityProfile

type PbmCapabilityProfile struct {
	PbmProfile

	// Indicates whether the profile is requirement
	// profile, a resource profile or a data service profile.
	//
	// The <code>profileCategory</code>
	// is a string value that corresponds to one of the
	// `PbmProfileCategoryEnum_enum` values.
	//     - REQUIREMENT profile - Defines the storage constraints applied
	//       to virtual machine placement. Requirements are defined by
	//       the user and can be associated with virtual machines and virtual
	//       disks. During provisioning, you can use a requirements profile
	//       for compliance and placement checking to support
	//       selection and configuration of resources.
	//     - RESOURCE profile - Specifies system-defined storage capabilities.
	//       You cannot modify a resource profile. You cannot associate a resource
	//       profile with vSphere entities, use it during provisioning, or target
	//       entities for resource selection or configuration.
	//       This type of profile gives the user visibility into the capabilities
	//       supported by the storage provider.
	//
	// DATA\_SERVICE\_POLICY - Indicates a data service policy that can
	// be embedded into another storage policy. Policies of this type can't
	// be assigned to Virtual Machines or Virtual Disks. This policy cannot
	// be used for compliance checking.
	ProfileCategory string `xml:"profileCategory" json:"profileCategory"`
	// Type of the target resource to which the capability information applies.
	//
	// A fixed enum that defines resource types for which capabilities can be defined
	// see `PbmProfileResourceType`, `PbmProfileResourceTypeEnum_enum`
	ResourceType PbmProfileResourceType `xml:"resourceType" json:"resourceType"`
	// Subprofiles that describe storage requirements or storage provider capabilities,
	// depending on the profile category (REQUIREMENT or RESOURCE).
	Constraints BasePbmCapabilityConstraints `xml:"constraints,typeattr" json:"constraints"`
	// Generation ID is used to communicate the current version of the profile to VASA
	// providers.
	//
	// It is only applicable to REQUIREMENT profile types. Every time a
	// requirement profile is edited, the Server will increment the generationId. You
	// do not need to set the generationID. When an object is created (or
	// reconfigured), the Server will send the requirement profile content, profile ID and
	// the generationID to VASA provider.
	GenerationId int64 `xml:"generationId,omitempty" json:"generationId,omitempty"`
	// Deprecated since it is not supported.
	//
	// Not supported in this release.
	IsDefault bool `xml:"isDefault" json:"isDefault"`
	// Indicates the type of system pre-created default profile.
	//
	// This will be set only for system pre-created default profiles. And
	// this is not set for RESOURCE profiles.
	SystemCreatedProfileType string `xml:"systemCreatedProfileType,omitempty" json:"systemCreatedProfileType,omitempty"`
	// This property is set only for data service policy.
	//
	// Indicates the line of service
	// `PbmLineOfServiceInfoLineOfServiceEnum_enum` of the data service policy.
	LineOfService string `xml:"lineOfService,omitempty" json:"lineOfService,omitempty"`
}

The `PbmCapabilityProfile` data object defines capability-based profiles.

A capability-based profile is derived from tag-based storage capabilities or from vSAN storage capabilities.

This structure may be used only with operations rendered under `/pbm`.

func (*PbmCapabilityProfile) GetPbmCapabilityProfile

func (b *PbmCapabilityProfile) GetPbmCapabilityProfile() *PbmCapabilityProfile

type PbmCapabilityProfileCreateSpec

type PbmCapabilityProfileCreateSpec struct {
	types.DynamicData

	// Name of the capability based profile to be created.
	//
	// The maximum length of the name is 80 characters.
	Name string `xml:"name" json:"name"`
	// Text description associated with the profile.
	Description string `xml:"description,omitempty" json:"description,omitempty"`
	// Category specifies the type of policy to be created.
	//
	// This can be REQUIREMENT from
	// `PbmProfileCategoryEnum_enum`
	// or null when creating a storage policy. And it can be DATA\_SERVICE\_POLICY from
	// `PbmProfileCategoryEnum_enum`
	// when creating a data service policy. RESOURCE from `PbmProfileCategoryEnum_enum`
	// is not allowed as resource profile is created by the system.
	Category string `xml:"category,omitempty" json:"category,omitempty"`
	// Deprecated as of vSphere API 6.5.
	//
	// Specifies the type of resource to which the profile applies.
	//
	// The only legal value is STORAGE - deprecated.
	ResourceType PbmProfileResourceType `xml:"resourceType" json:"resourceType"`
	// Set of subprofiles that define the storage requirements.
	//
	// A subprofile corresponds to a rule set in the vSphere Web Client.
	Constraints BasePbmCapabilityConstraints `xml:"constraints,typeattr" json:"constraints"`
}

The `PbmCapabilityProfileCreateSpec` describes storage requirements.

Use this data object to create a `PbmCapabilityProfile`.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityProfilePropertyMismatchFault

type PbmCapabilityProfilePropertyMismatchFault struct {
	PbmPropertyMismatchFault

	// The property instance in the resource profile that does not match.
	ResourcePropertyInstance PbmCapabilityPropertyInstance `xml:"resourcePropertyInstance" json:"resourcePropertyInstance"`
}

Fault used when a datastore doesnt match the capability profile property instance in requirements profile.

This structure may be used only with operations rendered under `/pbm`.

func (*PbmCapabilityProfilePropertyMismatchFault) GetPbmCapabilityProfilePropertyMismatchFault

func (b *PbmCapabilityProfilePropertyMismatchFault) GetPbmCapabilityProfilePropertyMismatchFault() *PbmCapabilityProfilePropertyMismatchFault

type PbmCapabilityProfileUpdateSpec

type PbmCapabilityProfileUpdateSpec struct {
	types.DynamicData

	// Specifies a new profile name.
	Name string `xml:"name,omitempty" json:"name,omitempty"`
	// Specifies a new profile description.
	Description string `xml:"description,omitempty" json:"description,omitempty"`
	// Specifies one or more subprofiles.
	//
	// A subprofile defines one or more
	// storage requirements.
	Constraints BasePbmCapabilityConstraints `xml:"constraints,omitempty,typeattr" json:"constraints,omitempty"`
}

The `PbmCapabilityProfileUpdateSpec` data object contains data that you use to update a storage profile.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityPropertyInstance

type PbmCapabilityPropertyInstance struct {
	types.DynamicData

	// Requirement property identifier.
	//
	// This identifier corresponds to the
	// storage capability metadata identifier
	// (`PbmCapabilityPropertyMetadata*.*PbmCapabilityPropertyMetadata.id`).
	Id string `xml:"id" json:"id"`
	// Operator for the values.
	//
	// Currently only support NOT operator for
	// tag namespace
	// See operator definition in (`PbmCapabilityOperator_enum`).
	Operator string `xml:"operator,omitempty" json:"operator,omitempty"`
	// Property value.
	//
	// You must specify the value.
	// A property value is one value or a collection of values.
	//     - A single property value is expressed as a scalar value.
	//     - A collection of values is expressed as a `PbmCapabilityDiscreteSet`
	//       or a `PbmCapabilityRange` of values.
	//
	// The datatype of each value must be one of the
	// `PbmBuiltinType_enum` datatypes.
	// If the property consists of a collection of values,
	// the interpretation of those values is determined by the
	// `PbmCapabilityGenericTypeInfo`.
	//
	// Type information for a property instance is described in the property metadata
	// (`PbmCapabilityPropertyMetadata*.*PbmCapabilityPropertyMetadata.type`).
	Value types.AnyType `xml:"value,typeattr" json:"value"`
}

The `PbmCapabilityPropertyInstance` data object describes a virtual machine storage requirement.

A storage requirement is based on the storage capability described in the `PbmCapabilityPropertyMetadata` and in the datastore profile property instance.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityPropertyMetadata

type PbmCapabilityPropertyMetadata struct {
	types.DynamicData

	// Property identifier.
	//
	// Should be unique within the definition of the
	// capability. Property instances refer to this identifier
	// (`PbmCapabilityPropertyInstance*.*PbmCapabilityPropertyInstance.id`).
	Id string `xml:"id" json:"id"`
	// Property name and description.
	//     - The <code>summary.label</code> property
	//       (`PbmExtendedElementDescription.label`)
	//       contains property 'name' in server locale.
	//     - The <code>summary.summary</code> property
	//       (`PbmExtendedElementDescription.summary`)
	//       contains property 'description' in server locale.
	//     - The <code>summary.messageCatalogKeyPrefix</code> property
	//       (`PbmExtendedElementDescription.messageCatalogKeyPrefix`)
	//       contains unique prefix for this property within given message catalog.
	//       Prefix format: &lt;capability\_unique\_identifier.&lt;property\_id
	//       capability\_unique\_identifier -- string representation of
	//       `PbmCapabilityMetadataUniqueId` which globally identifies given
	//       capability metadata definition uniquely.
	//       property\_id -- 'id' of this property `PbmCapabilityPropertyMetadata.id`
	//       Eg www.emc.com.storage.Recovery.Recovery\_site
	//       www.emc.com.storage.Recovery.RPO
	//       www.emc.com.storage.Recovery.RTO
	Summary PbmExtendedElementDescription `xml:"summary" json:"summary"`
	// Indicates whether incorporating given capability is mandatory during creation of
	// profile.
	Mandatory bool `xml:"mandatory" json:"mandatory"`
	// Type information for the capability.
	//
	// The type of a property value
	// (`PbmCapabilityPropertyInstance*.*PbmCapabilityPropertyInstance.value`)
	// is specified as a builtin datatype and may also specify the interpretation of a
	// collection of values of that datatype.
	//     - `PbmCapabilityPropertyMetadata.type*.*PbmCapabilityTypeInfo.typeName`
	//       specifies the `PbmBuiltinType_enum`.
	//     - `PbmCapabilityPropertyMetadata.type*.*PbmCapabilityGenericTypeInfo.genericTypeName`
	//       indicates how a collection of values of the specified datatype will be interpreted
	//       (`PbmBuiltinGenericType_enum`).
	Type BasePbmCapabilityTypeInfo `xml:"type,omitempty,typeattr" json:"type,omitempty"`
	// Default value, if any, that the property will assume when not
	// constrained by requirements.
	//
	// This object must be of the
	// `PbmCapabilityPropertyMetadata.type`
	// defined for the property.
	DefaultValue types.AnyType `xml:"defaultValue,omitempty,typeattr" json:"defaultValue,omitempty"`
	// All legal values that the property may take on, across all
	// implementations of the property.
	//
	// This definition of legal values is not
	// determined by any particular resource configuration; rather it is
	// inherent to the definition of the property. If undefined, then any value
	// of the correct type is legal. This object must be a generic container for
	// the `PbmCapabilityPropertyMetadata.type`
	// defined for the property;
	// see `PbmBuiltinGenericType_enum`
	// for the supported generic container types.
	AllowedValue types.AnyType `xml:"allowedValue,omitempty,typeattr" json:"allowedValue,omitempty"`
	// A hint for data-driven systems that assist in authoring requirements
	// constraints.
	//
	// Acceptable values defined by
	// `PbmBuiltinGenericType_enum`.
	// A property will typically only have constraints of a given type in
	// requirement profiles, even if it is likely to use constraints of
	// different types across capability profiles. This value, if specified,
	// specifies the expected kind of constraint used in requirement profiles.
	// Considerations for using this information:
	//     - This is only a hint; any properly formed constraint
	//       (see `PbmCapabilityPropertyInstance.value`)
	//       is still valid for a requirement profile.
	//     - If VMW\_SET is hinted, then a single value matching the property metadata type is
	//       also an expected form of constraint, as the latter is an allowed convenience
	//       for expressing a single-member set.
	//     - If this hint is not specified, then the authoring system may default to a form of
	//       constraint determined by its own criteria.
	RequirementsTypeHint string `xml:"requirementsTypeHint,omitempty" json:"requirementsTypeHint,omitempty"`
}

The `PbmCapabilityPropertyMetadata` data object describes storage capability.

An instance of property metadata may apply to many property instances (`PbmCapabilityPropertyInstance`).

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityRange

type PbmCapabilityRange struct {
	types.DynamicData

	// Minimum value of range.
	//
	// Must be one of the supported
	// datatypes as defined in `PbmBuiltinType_enum`.
	// Must be the same datatype as min.
	Min types.AnyType `xml:"min,typeattr" json:"min"`
	// Maximum value of range.
	//
	// Must be one of the supported
	// datatypes as defined in `PbmBuiltinType_enum`.
	// Must be the same datatype as max.
	Max types.AnyType `xml:"max,typeattr" json:"max"`
}

The `PbmCapabilityRange` data object defines a range of values for storage property instances (`PbmCapabilityPropertyInstance`).

Use the range type to define a range of values of a supported builtin type, for example range&lt;int&gt;, range&lt;long&gt;, or range&lt;timespan&gt;. You can specify a partial range by omitting one of the properties, min or max.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilitySchema

type PbmCapabilitySchema struct {
	types.DynamicData

	VendorInfo    PbmCapabilitySchemaVendorInfo `xml:"vendorInfo" json:"vendorInfo"`
	NamespaceInfo PbmCapabilityNamespaceInfo    `xml:"namespaceInfo" json:"namespaceInfo"`
	// Service type for the schema.
	//
	// Do not use Category as each service needs to have its own schema version.
	//
	// If omitted, this schema specifies persistence capabilities.
	LineOfService BasePbmLineOfServiceInfo `xml:"lineOfService,omitempty,typeattr" json:"lineOfService,omitempty"`
	// Capability metadata organized by category
	CapabilityMetadataPerCategory []PbmCapabilityMetadataPerCategory `xml:"capabilityMetadataPerCategory" json:"capabilityMetadataPerCategory"`
}

Capability Schema information

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilitySchemaVendorInfo

type PbmCapabilitySchemaVendorInfo struct {
	types.DynamicData

	// Unique identifier for the vendor who owns the given capability
	// schema definition
	VendorUuid string `xml:"vendorUuid" json:"vendorUuid"`
	// Captures name and description information about the vendor/owner of
	// the schema.
	//     - The <code>summary.label</code> property
	//       (`PbmExtendedElementDescription.label`)
	//       contains vendor name information in server locale.
	//     - The <code>summary.summary</code> property
	//       (`PbmExtendedElementDescription.summary`)
	//       contains vendor description string in server locale.
	//     - The <code>summary.messageCatalogKeyPrefix</code> property
	//       (`PbmExtendedElementDescription.messageCatalogKeyPrefix`)
	//       contains unique prefix for the vendor information within given message
	//       catalog.
	Info PbmExtendedElementDescription `xml:"info" json:"info"`
}

Information about vendor/owner of the capability metadata schema

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilitySubProfile

type PbmCapabilitySubProfile struct {
	types.DynamicData

	// Subprofile name.
	Name string `xml:"name" json:"name"`
	// List of capability instances.
	Capability []PbmCapabilityInstance `xml:"capability" json:"capability"`
	// Indicates whether the source policy profile allows creating a virtual machine
	// or virtual disk that may be non-compliant.
	ForceProvision *bool `xml:"forceProvision" json:"forceProvision,omitempty"`
}

A `PbmCapabilitySubProfile` is a section within a profile that aggregates one or more capability instances.

Capability instances define storage constraints.

All constraints within a subprofile are ANDed by default. When you perform compliance checking on a virtual machine or virtual disk, all of the constraints must be satisfied by the storage capabilities.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilitySubProfileConstraints

type PbmCapabilitySubProfileConstraints struct {
	PbmCapabilityConstraints

	// Aggregation of one or more subprofiles.
	//
	// The relationship among all subprofiles is "OR". When you perform
	// compliance checking on a profile that contains more than one subprofile,
	// a non-compliant result for any one of the subprofiles will produce a
	// non-compliant result for the operation.
	SubProfiles []PbmCapabilitySubProfile `xml:"subProfiles" json:"subProfiles"`
}

The `PbmCapabilitySubProfileConstraints` data object defines a group of storage subprofiles.

Subprofile usage depends on the type of profile (`PbmCapabilityProfile*.*PbmCapabilityProfile.profileCategory`).

  • For a REQUIREMENTS profile, each subprofile defines storage requirements. A Storage Policy API requirements subprofile corresponds to a vSphere Web Client rule set.
  • For a RESOURCE profile, each subprofile defines storage capabilities. Storage capabilities are read-only.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityTimeSpan

type PbmCapabilityTimeSpan struct {
	types.DynamicData

	// Time value.
	//
	// Must be a positive integer.
	Value int32 `xml:"value" json:"value"`
	// Unit value for time.
	//
	// The string value must correspond
	// to one of the `PbmCapabilityTimeUnitType_enum` values.
	Unit string `xml:"unit" json:"unit"`
}

The `PbmCapabilityTimeSpan` data object defines a time value and time unit, for example 10 hours or 5 minutes.

See `PbmBuiltinType_enum*.*VMW_TIMESPAN`.

This structure may be used only with operations rendered under `/pbm`.

type PbmCapabilityTimeUnitType

type PbmCapabilityTimeUnitType string

The `PbmCapabilityTimeUnitType_enum` enumeration type defines the supported list of time units for profiles that specify time span capabilities and constraints.

See `PbmCapabilityTimeSpan`.

type PbmCapabilityTypeInfo

type PbmCapabilityTypeInfo struct {
	types.DynamicData

	// Datatype for a property.
	//
	// Must be one of the types defined
	// in `PbmBuiltinType_enum`.
	//
	// A property value might consist of a collection of values of the specified
	// datatype. The interpretation of the collection is determined by the
	// generic type (`PbmCapabilityGenericTypeInfo.genericTypeName`).
	// The generic type indicates how a collection of values
	// of the specified datatype will be interpreted. See the descriptions of the
	// `PbmBuiltinType_enum` definitions.
	TypeName string `xml:"typeName" json:"typeName"`
}

The `PbmCapabilityTypeInfo` data object defines the datatype for a requirement or capability property.

See `PbmCapabilityPropertyMetadata`.

This structure may be used only with operations rendered under `/pbm`.

func (*PbmCapabilityTypeInfo) GetPbmCapabilityTypeInfo

func (b *PbmCapabilityTypeInfo) GetPbmCapabilityTypeInfo() *PbmCapabilityTypeInfo

type PbmCapabilityVendorNamespaceInfo

type PbmCapabilityVendorNamespaceInfo struct {
	types.DynamicData

	VendorInfo    PbmCapabilitySchemaVendorInfo `xml:"vendorInfo" json:"vendorInfo"`
	NamespaceInfo PbmCapabilityNamespaceInfo    `xml:"namespaceInfo" json:"namespaceInfo"`
}

type PbmCapabilityVendorResourceTypeInfo

type PbmCapabilityVendorResourceTypeInfo struct {
	types.DynamicData

	// Resource type for which given vendor has registered given namespace
	// along with capability metadata that belongs to the namespace.
	//
	// Must match one of the values for enum `PbmProfileResourceTypeEnum_enum`
	ResourceType string `xml:"resourceType" json:"resourceType"`
	// List of all vendorInfo -- namespaceInfo tuples that are registered for
	// given resource type
	VendorNamespaceInfo []PbmCapabilityVendorNamespaceInfo `xml:"vendorNamespaceInfo" json:"vendorNamespaceInfo"`
}

type PbmCheckCompatibilityRequestType

type PbmCheckCompatibilityRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Candidate list of hubs, either datastores or storage pods or a
	// mix. If this parameter is not specified, the Server uses all
	// of the datastores and storage pods for placement compatibility
	// checking.
	HubsToSearch []PbmPlacementHub `xml:"hubsToSearch,omitempty" json:"hubsToSearch,omitempty"`
	// Storage requirement profile.
	Profile PbmProfileId `xml:"profile" json:"profile"`
}

The parameters of `PbmPlacementSolver.PbmCheckCompatibility`.

type PbmCheckCompatibilityResponse

type PbmCheckCompatibilityResponse struct {
	Returnval []PbmPlacementCompatibilityResult `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmCheckCompatibilityWithSpecRequestType

type PbmCheckCompatibilityWithSpecRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Candidate list of hubs, either datastores or storage pods
	// or a mix. If this parameter is not specified, the Server uses all of the
	// datastores and storage pods for placement compatibility checking.
	HubsToSearch []PbmPlacementHub `xml:"hubsToSearch,omitempty" json:"hubsToSearch,omitempty"`
	// Specification for a capability based profile.
	ProfileSpec PbmCapabilityProfileCreateSpec `xml:"profileSpec" json:"profileSpec"`
}

The parameters of `PbmPlacementSolver.PbmCheckCompatibilityWithSpec`.

type PbmCheckCompatibilityWithSpecResponse

type PbmCheckCompatibilityWithSpecResponse struct {
	Returnval []PbmPlacementCompatibilityResult `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmCheckCompliance

type PbmCheckCompliance PbmCheckComplianceRequestType

type PbmCheckComplianceRequestType

type PbmCheckComplianceRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// One or more references to storage entities.
	// You can specify virtual machines and virtual disks
	// A maximum of 1000 virtual machines and/or virtual disks can be specified
	// in a call. The results of calling the checkCompliance API with
	// more than a 1000 entities is undefined.
	//     - If the list of entities also contains datastores, the Server
	//       will ignore the datastores.
	//     - If the list contains valid and invalid entities, the Server ignores
	//       the invalid entities and returns results for the valid entities.
	//       Invalid entities are entities that are not in the vCenter inventory.
	//     - If the list contains only datastores, the method throws
	//       an <code>InvalidArgument</code> fault.
	//     - If the list contains virtual machines and disks and the entities
	//       are invalid or have been deleted by the time of the request, the method
	//       throws an <code>InvalidArgument</code> fault.
	//
	// If an entity does not have an associated storage profile, the entity
	// is removed from the list.
	Entities []PbmServerObjectRef `xml:"entities" json:"entities"`
	// Not used. If specified, the Server ignores the value.
	// The Server uses the profiles associated with the specified entities.
	Profile *PbmProfileId `xml:"profile,omitempty" json:"profile,omitempty"`
}

The parameters of `PbmComplianceManager.PbmCheckCompliance`.

type PbmCheckComplianceResponse

type PbmCheckComplianceResponse struct {
	Returnval []PbmComplianceResult `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmCheckRequirementsRequestType

type PbmCheckRequirementsRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Candidate list of hubs, either datastores or storage pods
	// or a mix. If this parameter is not specified, the Server uses all of the
	// datastores and storage pods for placement compatibility checking.
	HubsToSearch []PbmPlacementHub `xml:"hubsToSearch,omitempty" json:"hubsToSearch,omitempty"`
	// reference to the object being placed. Should be null when a new
	// object is being provisioned. Should be specified when placement compatibility is being checked
	// for an existing object. Supported objects are
	// `virtualMachine`,
	// `virtualMachineAndDisks`,
	// `virtualDiskId`,
	// `virtualDiskUUID`
	PlacementSubjectRef *PbmServerObjectRef `xml:"placementSubjectRef,omitempty" json:"placementSubjectRef,omitempty"`
	// Requirements including the policy requirements, compute
	// requirements and capacity requirements. It is invalid to specify no requirements. It is also
	// invalid to specify duplicate requirements or multiple conflicting requirements such as
	// specifying both `PbmPlacementCapabilityConstraintsRequirement` and
	// `PbmPlacementCapabilityProfileRequirement`.
	PlacementSubjectRequirement []BasePbmPlacementRequirement `xml:"placementSubjectRequirement,omitempty,typeattr" json:"placementSubjectRequirement,omitempty"`
}

The parameters of `PbmPlacementSolver.PbmCheckRequirements`.

type PbmCheckRequirementsResponse

type PbmCheckRequirementsResponse struct {
	Returnval []PbmPlacementCompatibilityResult `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmCheckRollupComplianceRequestType

type PbmCheckRollupComplianceRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// One or more references to virtual machines.
	// A maximum of 1000 virtual machines can be specified
	// in a call. The results of calling the checkRollupCompliance API with
	// more than a 1000 entities is undefined.
	Entity []PbmServerObjectRef `xml:"entity" json:"entity"`
}

The parameters of `PbmComplianceManager.PbmCheckRollupCompliance`.

type PbmCheckRollupComplianceResponse

type PbmCheckRollupComplianceResponse struct {
	Returnval []PbmRollupComplianceResult `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmCompatibilityCheckFault

type PbmCompatibilityCheckFault struct {
	PbmFault

	// Placement Hub
	Hub PbmPlacementHub `xml:"hub" json:"hub"`
}

Super class for all compatibility check faults.

This structure may be used only with operations rendered under `/pbm`.

func (*PbmCompatibilityCheckFault) GetPbmCompatibilityCheckFault

func (b *PbmCompatibilityCheckFault) GetPbmCompatibilityCheckFault() *PbmCompatibilityCheckFault

type PbmCompatibilityCheckFaultFault

type PbmCompatibilityCheckFaultFault BasePbmCompatibilityCheckFault

type PbmComplianceOperationalStatus

type PbmComplianceOperationalStatus struct {
	types.DynamicData

	// Whether the object is currently affected by the failure of backend
	// storage resources.
	//
	// Optional property.
	Healthy *bool `xml:"healthy" json:"healthy,omitempty"`
	// Estimated completion time of a backend operation affecting the object.
	//
	// If set, then "transitional" will be true.
	// Optional property.
	OperationETA *time.Time `xml:"operationETA" json:"operationETA,omitempty"`
	// Percent progress of a backend operation affecting the object.
	//
	// If set, then "transitional" will be true.
	// Optional property.
	OperationProgress int64 `xml:"operationProgress,omitempty" json:"operationProgress,omitempty"`
	// Whether an object is undergoing a backend operation that may affect
	// its performance.
	//
	// This may be a rebalancing the resources of a healthy
	// object or recovery tasks for an unhealthy object.
	// Optional property.
	Transitional *bool `xml:"transitional" json:"transitional,omitempty"`
}

Additional information on the effects of backend resources and operations on the storage object.

This structure may be used only with operations rendered under `/pbm`.

type PbmCompliancePolicyStatus

type PbmCompliancePolicyStatus struct {
	types.DynamicData

	// Expected storage capability values of profile policies defined
	// by a storage provider.
	ExpectedValue PbmCapabilityInstance `xml:"expectedValue" json:"expectedValue"`
	// Current storage requirement values of the profile policies
	// specified for the virtual machine or virtual disk.
	CurrentValue *PbmCapabilityInstance `xml:"currentValue,omitempty" json:"currentValue,omitempty"`
}

The `PbmCompliancePolicyStatus` data object provides information when compliance checking produces non-compliant results.

See `PbmComplianceResult*.*PbmComplianceResult.violatedPolicies`.

This structure may be used only with operations rendered under `/pbm`.

type PbmComplianceResult

type PbmComplianceResult struct {
	types.DynamicData

	// Time when the compliance was checked.
	CheckTime time.Time `xml:"checkTime" json:"checkTime"`
	// Virtual machine or virtual disk for which compliance was checked.
	Entity PbmServerObjectRef `xml:"entity" json:"entity"`
	// Requirement profile with which the compliance was checked.
	Profile *PbmProfileId `xml:"profile,omitempty" json:"profile,omitempty"`
	// Status of the current running compliance operation.
	//
	// If there is no
	// compliance check operation triggered, this indicates the last compliance
	// task status. <code>complianceTaskStatus</code> is a string value that
	// corresponds to one of the
	// `PbmComplianceResultComplianceTaskStatus_enum` values.
	ComplianceTaskStatus string `xml:"complianceTaskStatus,omitempty" json:"complianceTaskStatus,omitempty"`
	// Status of the compliance operation.
	//
	// <code>complianceStatus</code> is a
	// string value that corresponds to one of the
	// `PbmComplianceStatus_enum` values.
	//
	// When you perform compliance checking on an entity whose associated profile
	// contains more than one subprofile (
	// `PbmCapabilityProfile` .
	// `PbmCapabilityProfile.constraints`), a compliant
	// result for any one of the subprofiles will produce a compliant result
	// for the operation.
	ComplianceStatus string `xml:"complianceStatus" json:"complianceStatus"`
	// Deprecated as of vSphere 2016, use
	// `PbmComplianceStatus_enum` to
	// know if a mismatch has occurred. If
	// `PbmComplianceResult.complianceStatus` value
	// is outOfDate, mismatch has occurred.
	//
	// Set to true if there is a profile version mismatch between the Storage
	// Profile Server and the storage provider.
	//
	// If you receive a result that
	// indicates a mismatch, you must use the vSphere API to update the profile
	// associated with the virtual machine or virtual disk.
	Mismatch bool `xml:"mismatch" json:"mismatch"`
	// Values for capabilities that are known to be non-compliant with the specified constraints.
	ViolatedPolicies []PbmCompliancePolicyStatus `xml:"violatedPolicies,omitempty" json:"violatedPolicies,omitempty"`
	// This property is set if the compliance task fails with errors.
	//
	// There can be
	// more than one error since a policy containing multiple blobs can return
	// multiple failures, one for each blob.
	ErrorCause []types.LocalizedMethodFault `xml:"errorCause,omitempty" json:"errorCause,omitempty"`
	// Additional information on the effects of backend resources and
	// operations on the storage object.
	OperationalStatus *PbmComplianceOperationalStatus `xml:"operationalStatus,omitempty" json:"operationalStatus,omitempty"`
	// Informational localized messages provided by the VASA provider in
	// addition to the <code>violatedPolicy</code>.
	Info *PbmExtendedElementDescription `xml:"info,omitempty" json:"info,omitempty"`
}

The `PbmComplianceResult` data object describes the results of profile compliance checking for a virtual machine or virtual disk.

This structure may be used only with operations rendered under `/pbm`.

type PbmComplianceResultComplianceTaskStatus

type PbmComplianceResultComplianceTaskStatus string

The `PbmComplianceResultComplianceTaskStatus_enum` enumeration type defines the set of task status for compliance operations.

See `PbmComplianceResult` and `PbmRollupComplianceResult`.

type PbmComplianceStatus

type PbmComplianceStatus string

The `PbmComplianceStatus_enum` enumeration type defines the set of status values for compliance operations.

See `PbmComplianceResult` and `PbmRollupComplianceResult`.

type PbmCreate

type PbmCreate PbmCreateRequestType

type PbmCreateRequestType

type PbmCreateRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Capability-based profile specification.
	CreateSpec PbmCapabilityProfileCreateSpec `xml:"createSpec" json:"createSpec"`
}

The parameters of `PbmProfileProfileManager.PbmCreate`.

type PbmCreateResponse

type PbmCreateResponse struct {
	Returnval PbmProfileId `xml:"returnval" json:"returnval"`
}

type PbmDataServiceToPoliciesMap

type PbmDataServiceToPoliciesMap struct {
	types.DynamicData

	// Denotes a Data Service Policy Id.
	DataServicePolicy PbmProfileId `xml:"dataServicePolicy" json:"dataServicePolicy"`
	// Storage Policies that refer to the Data Service Policy given by
	// `PbmDataServiceToPoliciesMap.dataServicePolicy`.
	ParentStoragePolicies []PbmProfileId `xml:"parentStoragePolicies,omitempty" json:"parentStoragePolicies,omitempty"`
	// The fault is set in case of error conditions and this property will
	// have the reason.
	Fault *types.LocalizedMethodFault `xml:"fault,omitempty" json:"fault,omitempty"`
}

DataServiceToProfilesMap maps the data service policy to the parent storage policies if referred.

This is returned from the API call `ProfileManager#queryParentStoragePolicies(ProfileId[])`

This structure may be used only with operations rendered under `/pbm`.

type PbmDatastoreSpaceStatistics

type PbmDatastoreSpaceStatistics struct {
	types.DynamicData

	// Capability profile id.
	//
	// It is null when the statistics are for the entire
	// datastore.
	ProfileId string `xml:"profileId,omitempty" json:"profileId,omitempty"`
	// Total physical space in MB.
	PhysicalTotalInMB int64 `xml:"physicalTotalInMB" json:"physicalTotalInMB"`
	// Total physical free space in MB.
	PhysicalFreeInMB int64 `xml:"physicalFreeInMB" json:"physicalFreeInMB"`
	// Used physical storage space in MB.
	PhysicalUsedInMB int64 `xml:"physicalUsedInMB" json:"physicalUsedInMB"`
	// Logical space limit set by the storage admin in MB.
	//
	// Omitted if there is no Logical space limit.
	LogicalLimitInMB int64 `xml:"logicalLimitInMB,omitempty" json:"logicalLimitInMB,omitempty"`
	// Free logical storage space in MB.
	LogicalFreeInMB int64 `xml:"logicalFreeInMB" json:"logicalFreeInMB"`
	// Used logical storage space in MB.
	LogicalUsedInMB int64 `xml:"logicalUsedInMB" json:"logicalUsedInMB"`
}

Space stats for datastore

This structure may be used only with operations rendered under `/pbm`.

type PbmDebugManagerKeystoreName added in v0.29.0

type PbmDebugManagerKeystoreName string

This enum corresponds to the keystores used by sps.

type PbmDefaultCapabilityProfile

type PbmDefaultCapabilityProfile struct {
	PbmCapabilityProfile

	// Not supported in this release.
	VvolType []string `xml:"vvolType" json:"vvolType"`
	// Not supported in this release.
	ContainerId string `xml:"containerId" json:"containerId"`
}

Not supported in this release.

This structure may be used only with operations rendered under `/pbm`.

type PbmDefaultProfileAppliesFault

type PbmDefaultProfileAppliesFault struct {
	PbmCompatibilityCheckFault
}

Warning fault used to indicate that the vendor specific datastore matches the tag in the requirements profile that does not have a vendor specific rule set.

In such case, an empty blob is sent to the vendor specific datastore and the default profile would apply.

This structure may be used only with operations rendered under `/pbm`.

type PbmDefaultProfileAppliesFaultFault

type PbmDefaultProfileAppliesFaultFault PbmDefaultProfileAppliesFault

type PbmDefaultProfileInfo

type PbmDefaultProfileInfo struct {
	types.DynamicData

	// Datastores
	Datastores []PbmPlacementHub `xml:"datastores" json:"datastores"`
	// Default requirements profile.
	//
	// It is set to null if the datastores are not associated with any default profile.
	DefaultProfile BasePbmProfile `xml:"defaultProfile,omitempty,typeattr" json:"defaultProfile,omitempty"`
	// NoPermission fault if default profile is not permitted.
	MethodFault *types.LocalizedMethodFault `xml:"methodFault,omitempty" json:"methodFault,omitempty"`
}

Data structure that stores the default profile for datastores.

This structure may be used only with operations rendered under `/pbm`.

type PbmDelete

type PbmDelete PbmDeleteRequestType

type PbmDeleteRequestType

type PbmDeleteRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Array of profile identifiers.
	ProfileId []PbmProfileId `xml:"profileId" json:"profileId"`
}

The parameters of `PbmProfileProfileManager.PbmDelete`.

type PbmDeleteResponse

type PbmDeleteResponse struct {
	Returnval []PbmProfileOperationOutcome `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmDuplicateName

type PbmDuplicateName struct {
	PbmFault

	// The name that is already bound in the name space.
	Name string `xml:"name" json:"name"`
}

A DuplicateName exception is thrown because a name already exists in the same name space.

This structure may be used only with operations rendered under `/pbm`.

type PbmDuplicateNameFault

type PbmDuplicateNameFault PbmDuplicateName

type PbmExtendedElementDescription

type PbmExtendedElementDescription struct {
	types.DynamicData

	// Display label.
	Label string `xml:"label" json:"label"`
	// Summary description.
	Summary string `xml:"summary" json:"summary"`
	// Enumeration or literal ID being described.
	Key string `xml:"key" json:"key"`
	// Key to the localized message string in the catalog.
	//
	// If the localized string contains parameters, values to the
	// parameters will be provided in #messageArg.
	// E.g: If the message in the catalog is
	// "IP address is {address}", value for "address"
	// will be provided by #messageArg.
	// Both summary and label in ElementDescription will have a corresponding
	// entry in the message catalog with the keys
	// .summary and .label
	// respectively.
	// ElementDescription.summary and ElementDescription.label will contain
	// the strings in server locale.
	MessageCatalogKeyPrefix string `xml:"messageCatalogKeyPrefix" json:"messageCatalogKeyPrefix"`
	// Provides named arguments that can be used to localize the
	// message in the catalog.
	MessageArg []types.KeyAnyValue `xml:"messageArg,omitempty" json:"messageArg,omitempty"`
}

type PbmFault

type PbmFault struct {
	types.MethodFault
}

The super class for all pbm faults.

This structure may be used only with operations rendered under `/pbm`.

func (*PbmFault) GetPbmFault

func (b *PbmFault) GetPbmFault() *PbmFault

type PbmFaultFault

type PbmFaultFault BasePbmFault

type PbmFaultInvalidLogin

type PbmFaultInvalidLogin struct {
	PbmFault
}

Thrown when login fails due to token not provided or token could not be validated.

This structure may be used only with operations rendered under `/pbm`.

type PbmFaultInvalidLoginFault

type PbmFaultInvalidLoginFault PbmFaultInvalidLogin

type PbmFaultNoPermission added in v0.31.0

type PbmFaultNoPermission struct {
	types.SecurityError

	// List of profile ids and missing privileges for each profile
	MissingPrivileges []PbmFaultNoPermissionEntityPrivileges `xml:"missingPrivileges,omitempty" json:"missingPrivileges,omitempty"`
}

Thrown when an operation is denied because of a privilege not held on a storage profile.

This structure may be used only with operations rendered under `/pbm`.

type PbmFaultNoPermissionEntityPrivileges added in v0.29.0

type PbmFaultNoPermissionEntityPrivileges struct {
	types.DynamicData

	ProfileId    *PbmProfileId `xml:"profileId,omitempty" json:"profileId,omitempty"`
	PrivilegeIds []string      `xml:"privilegeIds,omitempty" json:"privilegeIds,omitempty"`
}

type PbmFaultNoPermissionFault added in v0.31.0

type PbmFaultNoPermissionFault PbmFaultNoPermission

type PbmFaultNotFound

type PbmFaultNotFound struct {
	PbmFault
}

A NotFound error occurs when a referenced component of a managed object cannot be found.

The referenced component can be a data object type (such as a role or permission) or a primitive (such as a string).

For example, if the missing referenced component is a data object, such as VirtualSwitch, the NotFound error is thrown. The NotFound error is also thrown if the data object is found, but the referenced name (for example, "vswitch0") is not.

This structure may be used only with operations rendered under `/pbm`.

type PbmFaultNotFoundFault

type PbmFaultNotFoundFault PbmFaultNotFound

type PbmFaultProfileStorageFault

type PbmFaultProfileStorageFault struct {
	PbmFault
}

type PbmFaultProfileStorageFaultFault

type PbmFaultProfileStorageFaultFault PbmFaultProfileStorageFault

type PbmFetchCapabilityMetadataRequestType

type PbmFetchCapabilityMetadataRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Type of profile resource. The Server supports the "STORAGE" resource
	// type only. If not specified, this method will return capability metadata for the storage
	// resources. Any other <code>resourceType</code> is considered invalid.
	ResourceType *PbmProfileResourceType `xml:"resourceType,omitempty" json:"resourceType,omitempty"`
	// Unique identifier for the vendor/owner of capability
	// metadata. The specified vendor ID must match
	// `PbmCapabilitySchemaVendorInfo*.*PbmCapabilitySchemaVendorInfo.vendorUuid`.
	// If omitted, the Server searchs all capability metadata registered with the system. If a
	// <code>vendorUuid</code> unknown to the Server is specified, empty results will be returned.
	VendorUuid string `xml:"vendorUuid,omitempty" json:"vendorUuid,omitempty"`
}

The parameters of `PbmProfileProfileManager.PbmFetchCapabilityMetadata`.

type PbmFetchCapabilityMetadataResponse

type PbmFetchCapabilityMetadataResponse struct {
	Returnval []PbmCapabilityMetadataPerCategory `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmFetchCapabilitySchemaRequestType

type PbmFetchCapabilitySchemaRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Unique identifier for the vendor/owner of capability metadata.
	// If omitted, the server searchs all capability metadata registered
	// with the system. The specified vendor ID must match
	// `PbmCapabilitySchemaVendorInfo*.*PbmCapabilitySchemaVendorInfo.vendorUuid`.
	VendorUuid string `xml:"vendorUuid,omitempty" json:"vendorUuid,omitempty"`
	// Optional line of service that must match `PbmLineOfServiceInfoLineOfServiceEnum_enum`.
	// If specified, the capability schema objects
	// are returned for the given lineOfServices. If null, then all
	// capability schema objects that may or may not have data service capabilities
	// are returned.
	LineOfService []string `xml:"lineOfService,omitempty" json:"lineOfService,omitempty"`
}

The parameters of `PbmProfileProfileManager.PbmFetchCapabilitySchema`.

type PbmFetchCapabilitySchemaResponse

type PbmFetchCapabilitySchemaResponse struct {
	Returnval []PbmCapabilitySchema `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmFetchComplianceResultRequestType

type PbmFetchComplianceResultRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// One or more references to storage entities.
	// A maximum of 1000 virtual machines and/or virtual disks can be specified
	// in a call. The results of calling the fetchComplianceResult API with
	// more than a 1000 entities is undefined.
	//     - If the list of entities also contains datastores, the Server
	//       will ignore the datastores.
	//     - If the list contains valid and invalid entities, the Server ignores
	//       the invalid entities and returns results for the valid entities.
	//       Invalid entities are entities that are not in the vCenter inventory.
	//     - If the list contains only datastores, the method throws
	//       an <code>InvalidArgument</code> fault.
	Entities []PbmServerObjectRef `xml:"entities" json:"entities"`
	// Not used. if specified, the Server ignores the value.
	// The Server uses the profiles associated with the specified entities.
	Profile *PbmProfileId `xml:"profile,omitempty" json:"profile,omitempty"`
}

The parameters of `PbmComplianceManager.PbmFetchComplianceResult`.

type PbmFetchComplianceResultResponse

type PbmFetchComplianceResultResponse struct {
	Returnval []PbmComplianceResult `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmFetchEntityHealthStatusSpec added in v0.27.0

type PbmFetchEntityHealthStatusSpec struct {
	types.DynamicData

	// `PbmServerObjectRef` for which the healthStatus is required
	ObjectRef PbmServerObjectRef `xml:"objectRef" json:"objectRef"`
	// BackingId for the ServerObjectRef
	// BackingId is mandatory for FCD on vSAN
	BackingId string `xml:"backingId,omitempty" json:"backingId,omitempty"`
}

The `PbmFetchEntityHealthStatusSpec` data object contains the arguments required for `PbmComplianceManager.PbmFetchEntityHealthStatusExt`.

This structure may be used only with operations rendered under `/pbm`.

type PbmFetchResourceTypeRequestType

type PbmFetchResourceTypeRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
}

type PbmFetchResourceTypeResponse

type PbmFetchResourceTypeResponse struct {
	Returnval []PbmProfileResourceType `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmFetchRollupComplianceResultRequestType

type PbmFetchRollupComplianceResultRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// One or more virtual machines.
	// A maximum of 1000 virtual machines can be specified
	// in a call. The results of calling the fetchRollupComplianceResult API with
	// more than a 1000 entity objects is undefined.
	Entity []PbmServerObjectRef `xml:"entity" json:"entity"`
}

The parameters of `PbmComplianceManager.PbmFetchRollupComplianceResult`.

type PbmFetchRollupComplianceResultResponse

type PbmFetchRollupComplianceResultResponse struct {
	Returnval []PbmRollupComplianceResult `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmFetchVendorInfo

type PbmFetchVendorInfo PbmFetchVendorInfoRequestType

type PbmFetchVendorInfoRequestType

type PbmFetchVendorInfoRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Specifies the resource type. The Server supports the STORAGE resource
	// type only. If not specified, server defaults to STORAGE resource type. Any other
	// <code>resourceType</code> is considered invalid.
	ResourceType *PbmProfileResourceType `xml:"resourceType,omitempty" json:"resourceType,omitempty"`
}

The parameters of `PbmProfileProfileManager.PbmFetchVendorInfo`.

type PbmFetchVendorInfoResponse

type PbmFetchVendorInfoResponse struct {
	Returnval []PbmCapabilityVendorResourceTypeInfo `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmFindApplicableDefaultProfileRequestType

type PbmFindApplicableDefaultProfileRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Datastores for which the default profile is found out. Note that
	// the datastore pods/clusters are not supported.
	Datastores []PbmPlacementHub `xml:"datastores" json:"datastores"`
}

The parameters of `PbmProfileProfileManager.PbmFindApplicableDefaultProfile`.

type PbmFindApplicableDefaultProfileResponse

type PbmFindApplicableDefaultProfileResponse struct {
	Returnval []BasePbmProfile `xml:"returnval,omitempty,typeattr" json:"returnval,omitempty"`
}

type PbmHealthStatusForEntity added in v0.23.0

type PbmHealthStatusForEntity string

The enumeration type defines the set of health status values for an entity that is part of entity health operation.

type PbmIncompatibleVendorSpecificRuleSet

type PbmIncompatibleVendorSpecificRuleSet struct {
	PbmCapabilityProfilePropertyMismatchFault
}

Warning fault used to indicate that the vendor specific datastore matches the tag in the requirements profile but doesnt match the vendor specific rule set in the requirements profile.

This structure may be used only with operations rendered under `/pbm`.

type PbmIncompatibleVendorSpecificRuleSetFault

type PbmIncompatibleVendorSpecificRuleSetFault PbmIncompatibleVendorSpecificRuleSet

type PbmIofilterInfoFilterType

type PbmIofilterInfoFilterType string

Recognized types of an IO Filter.

String constant used in `IofilterInfo#filterType`. These should match(upper case) the IO Filter classes as defined by IO Filter framework. See https://opengrok.eng.vmware.com/source/xref/vmcore-main.perforce.1666/bora/scons/apps/esx/iofilterApps.sc#33

type PbmLegacyHubsNotSupported

type PbmLegacyHubsNotSupported struct {
	PbmFault

	// Legacy hubs that are not supported.
	//
	// Only datastores will be populated in this fault. Datastore clusters
	// are not allowed.
	Hubs []PbmPlacementHub `xml:"hubs" json:"hubs"`
}

LegacyHubsNotSupported fault is thrown to indicate the legacy hubs that are not supported.

For storage, legacy hubs or datastores are VMFS and NFS datastores.

This structure may be used only with operations rendered under `/pbm`.

type PbmLegacyHubsNotSupportedFault

type PbmLegacyHubsNotSupportedFault PbmLegacyHubsNotSupported

type PbmLineOfServiceInfo

type PbmLineOfServiceInfo struct {
	types.DynamicData

	// `PbmLineOfServiceInfoLineOfServiceEnum_enum` - must be one of the values
	// for enum `PbmLineOfServiceInfoLineOfServiceEnum_enum`.
	LineOfService string `xml:"lineOfService" json:"lineOfService"`
	// Name of the service - for informational
	// purposes only.
	Name PbmExtendedElementDescription `xml:"name" json:"name"`
	// Description of the service - for informational
	// purposes only.
	Description *PbmExtendedElementDescription `xml:"description,omitempty" json:"description,omitempty"`
}

Describes Line of Service of a capability provider.

This structure may be used only with operations rendered under `/pbm`.

func (*PbmLineOfServiceInfo) GetPbmLineOfServiceInfo

func (b *PbmLineOfServiceInfo) GetPbmLineOfServiceInfo() *PbmLineOfServiceInfo

type PbmLineOfServiceInfoLineOfServiceEnum

type PbmLineOfServiceInfoLineOfServiceEnum string

Denotes the line of service of a schema.

type PbmLoggingConfiguration added in v0.29.0

type PbmLoggingConfiguration struct {
	types.DynamicData

	Component string `xml:"component" json:"component"`
	LogLevel  string `xml:"logLevel" json:"logLevel"`
}

type PbmLoggingConfigurationComponent added in v0.29.0

type PbmLoggingConfigurationComponent string

This enum corresponds to the different packages whose logging is configured independently by sps service.

type PbmLoggingConfigurationLogLevel added in v0.29.0

type PbmLoggingConfigurationLogLevel string

This enum corresponds to the different log levels supported by sps service.

type PbmNonExistentHubs

type PbmNonExistentHubs struct {
	PbmFault

	// Legacy hubs that do not exist.
	Hubs []PbmPlacementHub `xml:"hubs" json:"hubs"`
}

NonExistentHubs is thrown to indicate that some non existent datastores are used.

This structure may be used only with operations rendered under `/pbm`.

type PbmNonExistentHubsFault

type PbmNonExistentHubsFault PbmNonExistentHubs

type PbmObjectType

type PbmObjectType string

The `PbmObjectType_enum` enumerated type defines vSphere Server object types that are known to the Storage Policy Server.

See `PbmServerObjectRef*.*PbmServerObjectRef.objectType`.

type PbmOperation added in v0.18.0

type PbmOperation string

The `PbmOperation_enum` enumerated type defines the provisioning operation being performed on the entity like FCD, virtual machine.

type PbmPersistenceBasedDataServiceInfo

type PbmPersistenceBasedDataServiceInfo struct {
	PbmLineOfServiceInfo

	// This property should be set with compatible schema namespaces exposed by
	// the vendor provider.
	//
	// If not specified, vSphere assumes all Data Service
	// provider schemas are compatible with all persistence provider namespaces
	// advertised by the VASA provider.
	CompatiblePersistenceSchemaNamespace []string `xml:"compatiblePersistenceSchemaNamespace,omitempty" json:"compatiblePersistenceSchemaNamespace,omitempty"`
}

Describes the data services provided by the storage arrays.

In addition to storing bits, some VASA providers may also want to separate their capabilities into lines of service to let vSphere manage finer grain policies. For example an array may support replication natively, and may want vSphere policies to be defined for the replication aspect separately and compose them with persistence related policies.

This structure may be used only with operations rendered under `/pbm`.

type PbmPlacementCapabilityConstraintsRequirement

type PbmPlacementCapabilityConstraintsRequirement struct {
	PbmPlacementRequirement

	// Capability constraints
	Constraints BasePbmCapabilityConstraints `xml:"constraints,typeattr" json:"constraints"`
}

Requirement type containing capability constraints

This structure may be used only with operations rendered under `/pbm`.

type PbmPlacementCapabilityProfileRequirement

type PbmPlacementCapabilityProfileRequirement struct {
	PbmPlacementRequirement

	// Reference to the capability profile being used as a requirement
	ProfileId PbmProfileId `xml:"profileId" json:"profileId"`
}

A Requirement for a particular `PbmCapabilityProfile`.

This structure may be used only with operations rendered under `/pbm`.

type PbmPlacementCompatibilityResult

type PbmPlacementCompatibilityResult struct {
	types.DynamicData

	// The <code>Datastore</code> or <code>StoragePod</code> under consideration
	// as a location for virtual machine files.
	Hub PbmPlacementHub `xml:"hub" json:"hub"`
	// Resources that match the policy.
	//
	// If populated, signifies that there are
	// specific resources that match the policy for `PbmPlacementCompatibilityResult.hub`. If null,
	// signifies that all resources (for example, hosts connected to the
	// datastore or storage pod) are compatible.
	MatchingResources []BasePbmPlacementMatchingResources `xml:"matchingResources,omitempty,typeattr" json:"matchingResources,omitempty"`
	// How many objects of the kind requested can be provisioned on this
	// `PbmPlacementCompatibilityResult.hub`.
	HowMany int64 `xml:"howMany,omitempty" json:"howMany,omitempty"`
	// This field is not populated if there is no size in the query, i.e.
	//
	// if the request carries only policy and no size requirements, this
	// will not be populated.
	Utilization []PbmPlacementResourceUtilization `xml:"utilization,omitempty" json:"utilization,omitempty"`
	// Array of faults that describe issues that may affect profile compatibility.
	//
	// Users should consider these issues before using this <code>Datastore</code>
	// or <code>StoragePod</code> and a connected <code>Host</code>s.
	Warning []types.LocalizedMethodFault `xml:"warning,omitempty" json:"warning,omitempty"`
	// Array of faults that prevent this datastore or storage pod from being compatible with the
	// specified profile, including if no host connected to this `PbmPlacementCompatibilityResult.hub` is compatible.
	Error []types.LocalizedMethodFault `xml:"error,omitempty" json:"error,omitempty"`
}

The `PbmPlacementCompatibilityResult` data object contains the compatibility result of a placement request.

This structure may be used only with operations rendered under `/pbm`.

type PbmPlacementHub

type PbmPlacementHub struct {
	types.DynamicData

	// Type of the hub.
	//
	// Currently ManagedObject is the only supported type.
	HubType string `xml:"hubType" json:"hubType"`
	// Hub identifier; a ManagedObjectReference to a datastore or a storage pod.
	HubId string `xml:"hubId" json:"hubId"`
}

A `PbmPlacementHub` data object identifies a storage location where virtual machine files can be placed.

This structure may be used only with operations rendered under `/pbm`.

type PbmPlacementMatchingReplicationResources

type PbmPlacementMatchingReplicationResources struct {
	PbmPlacementMatchingResources

	// Replication groups that match the policy.
	ReplicationGroup []types.ReplicationGroupId `xml:"replicationGroup,omitempty" json:"replicationGroup,omitempty"`
}

Describes the collection of replication related resources that satisfy a policy, for a specific datastore.

This class is returned only when the policy contains replication capabilities. For a storage pod, only those replication groups that are common across all datastores in the storage pod are considered compatible.

This structure may be used only with operations rendered under `/pbm`.

type PbmPlacementMatchingResources

type PbmPlacementMatchingResources struct {
	types.DynamicData
}

Describes the collection of resources (for example, hosts) that satisfy a policy, for a specific datastore.

This structure may be used only with operations rendered under `/pbm`.

func (*PbmPlacementMatchingResources) GetPbmPlacementMatchingResources

func (b *PbmPlacementMatchingResources) GetPbmPlacementMatchingResources() *PbmPlacementMatchingResources

type PbmPlacementRequirement

type PbmPlacementRequirement struct {
	types.DynamicData
}

Defines a constraint for placing objects onto `PbmPlacementHub`s.

This structure may be used only with operations rendered under `/pbm`.

func (*PbmPlacementRequirement) GetPbmPlacementRequirement

func (b *PbmPlacementRequirement) GetPbmPlacementRequirement() *PbmPlacementRequirement

type PbmPlacementResourceUtilization

type PbmPlacementResourceUtilization struct {
	types.DynamicData

	// Name of the resource.
	Name PbmExtendedElementDescription `xml:"name" json:"name"`
	// Description of the resource.
	Description PbmExtendedElementDescription `xml:"description" json:"description"`
	// Currently available (i.e.
	//
	// before the provisioning step).
	AvailableBefore int64 `xml:"availableBefore,omitempty" json:"availableBefore,omitempty"`
	// Available after the provisioning step.
	AvailableAfter int64 `xml:"availableAfter,omitempty" json:"availableAfter,omitempty"`
	// Total resource availability
	Total int64 `xml:"total,omitempty" json:"total,omitempty"`
}

Describes the resource utilization metrics of a datastore.

These results are not to be treated as a guaranteed availability, they are useful to estimate the effects of a change of policy or the effects of a provisioning action.

This structure may be used only with operations rendered under `/pbm`.

type PbmPolicyAssociationVolumeAllocationType added in v0.29.0

type PbmPolicyAssociationVolumeAllocationType string

Volume allocation type constants.

type PbmProfile

type PbmProfile struct {
	types.DynamicData

	// Unique identifier for the profile.
	ProfileId PbmProfileId `xml:"profileId" json:"profileId"`
	Name      string       `xml:"name" json:"name"`
	// Profile description.
	Description string `xml:"description,omitempty" json:"description,omitempty"`
	// Time stamp of profile creation.
	CreationTime time.Time `xml:"creationTime" json:"creationTime"`
	// User name of the profile creator.
	//
	// Set during creation time.
	CreatedBy string `xml:"createdBy" json:"createdBy"`
	// Time stamp of latest modification to the profile.
	LastUpdatedTime time.Time `xml:"lastUpdatedTime" json:"lastUpdatedTime"`
	// Name of the user performing the latest modification of the profile.
	LastUpdatedBy string `xml:"lastUpdatedBy" json:"lastUpdatedBy"`
}

The `PbmProfile` data object is the base object for storage capability profiles.

This object defines metadata for the profile. The derived capability profile represents the user's intent for selection and configuration of storage resources and/or services that support deployment of virtual machines and virtual disks.

This structure may be used only with operations rendered under `/pbm`.

func (*PbmProfile) GetPbmProfile

func (b *PbmProfile) GetPbmProfile() *PbmProfile

type PbmProfileCategoryEnum

type PbmProfileCategoryEnum string

The `PbmProfileCategoryEnum_enum` enumerated type defines the profile categories for a capability-based storage profile.

See `PbmCapabilityProfile`.

type PbmProfileId

type PbmProfileId struct {
	types.DynamicData

	// Unique identifier of the profile.
	UniqueId string `xml:"uniqueId" json:"uniqueId"`
}

Profile unique identifier.

This structure may be used only with operations rendered under `/pbm`.

type PbmProfileOperationOutcome

type PbmProfileOperationOutcome struct {
	types.DynamicData

	// Identifies the profile specified for the operation.
	ProfileId PbmProfileId `xml:"profileId" json:"profileId"`
	// One of the `PbmFault` objects.
	Fault *types.LocalizedMethodFault `xml:"fault,omitempty" json:"fault,omitempty"`
}

The `PbmProfileOperationOutcome` data object describes the result of a `PbmProfileProfileManager` operation.

If there was an error during the operation, the object identifies the fault.

This structure may be used only with operations rendered under `/pbm`.

type PbmProfileResourceType

type PbmProfileResourceType struct {
	types.DynamicData

	// Type of resource to which capability information applies.
	//
	// <code>resourceType</code> is a string value that corresponds to
	// a `PbmProfileResourceTypeEnum_enum` enumeration value.
	// Only the STORAGE resource type is supported.
	ResourceType string `xml:"resourceType" json:"resourceType"`
}

The `PbmProfileResourceType` data object defines the vSphere resource type that is supported for profile management.

This structure may be used only with operations rendered under `/pbm`.

type PbmProfileResourceTypeEnum

type PbmProfileResourceTypeEnum string

The `PbmProfileResourceTypeEnum_enum` enumerated type defines the set of resource types that are supported for profile management.

See `PbmProfileResourceType`.

type PbmProfileType

type PbmProfileType struct {
	types.DynamicData

	// Unique type identifier for this profile type.
	//
	// eg "CapabilityBased", or other.
	UniqueId string `xml:"uniqueId" json:"uniqueId"`
}

The `PbmProfileType` identifier is defined by storage providers to distinguish between different types of profiles plugged into the system.

An example of a system supported profile type is "CapabilityBasedProfileType" which will be the type used for all capability-based profiles created by the system using capability metadata information published to the system.

For internal use only.

This structure may be used only with operations rendered under `/pbm`.

type PbmPropertyMismatchFault

type PbmPropertyMismatchFault struct {
	PbmCompatibilityCheckFault

	// Id of the CapabilityInstance in requirements profile that
	// does not match.
	CapabilityInstanceId PbmCapabilityMetadataUniqueId `xml:"capabilityInstanceId" json:"capabilityInstanceId"`
	// The property instance in requirement profile that does not match.
	RequirementPropertyInstance PbmCapabilityPropertyInstance `xml:"requirementPropertyInstance" json:"requirementPropertyInstance"`
}

Fault used to indicate which property instance in requirements profile that does not match.

This structure may be used only with operations rendered under `/pbm`.

func (*PbmPropertyMismatchFault) GetPbmPropertyMismatchFault

func (b *PbmPropertyMismatchFault) GetPbmPropertyMismatchFault() *PbmPropertyMismatchFault

type PbmPropertyMismatchFaultFault

type PbmPropertyMismatchFaultFault BasePbmPropertyMismatchFault

type PbmQueryAssociatedEntitiesRequestType

type PbmQueryAssociatedEntitiesRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Storage policy array.
	Profiles []PbmProfileId `xml:"profiles,omitempty" json:"profiles,omitempty"`
}

The parameters of `PbmProfileProfileManager.PbmQueryAssociatedEntities`.

type PbmQueryAssociatedEntitiesResponse

type PbmQueryAssociatedEntitiesResponse struct {
	Returnval []PbmQueryProfileResult `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmQueryAssociatedEntityRequestType

type PbmQueryAssociatedEntityRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Profile identifier.
	Profile PbmProfileId `xml:"profile" json:"profile"`
	// If specified, the method returns only those entities
	// which match the type. The <code>entityType</code> string value must match
	// one of the `PbmObjectType_enum` values.
	// If not specified, the method returns all entities associated with the profile.
	EntityType string `xml:"entityType,omitempty" json:"entityType,omitempty"`
}

The parameters of `PbmProfileProfileManager.PbmQueryAssociatedEntity`.

type PbmQueryAssociatedEntityResponse

type PbmQueryAssociatedEntityResponse struct {
	Returnval []PbmServerObjectRef `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmQueryAssociatedProfileRequestType

type PbmQueryAssociatedProfileRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Reference to a virtual machine, virtual disk, or datastore.
	Entity PbmServerObjectRef `xml:"entity" json:"entity"`
}

The parameters of `PbmProfileProfileManager.PbmQueryAssociatedProfile`.

type PbmQueryAssociatedProfileResponse

type PbmQueryAssociatedProfileResponse struct {
	Returnval []PbmProfileId `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmQueryAssociatedProfilesRequestType

type PbmQueryAssociatedProfilesRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Array of server object references.
	Entities []PbmServerObjectRef `xml:"entities" json:"entities"`
}

The parameters of `PbmProfileProfileManager.PbmQueryAssociatedProfiles`.

type PbmQueryAssociatedProfilesResponse

type PbmQueryAssociatedProfilesResponse struct {
	Returnval []PbmQueryProfileResult `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmQueryByRollupComplianceStatusRequestType

type PbmQueryByRollupComplianceStatusRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// `PbmComplianceStatus_enum`
	Status string `xml:"status" json:"status"`
}

The parameters of `PbmComplianceManager.PbmQueryByRollupComplianceStatus`.

type PbmQueryByRollupComplianceStatusResponse

type PbmQueryByRollupComplianceStatusResponse struct {
	Returnval []PbmServerObjectRef `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmQueryDefaultRequirementProfileRequestType

type PbmQueryDefaultRequirementProfileRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Placement hub (i.e. datastore).
	Hub PbmPlacementHub `xml:"hub" json:"hub"`
}

The parameters of `PbmProfileProfileManager.PbmQueryDefaultRequirementProfile`.

type PbmQueryDefaultRequirementProfileResponse

type PbmQueryDefaultRequirementProfileResponse struct {
	Returnval *PbmProfileId `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmQueryDefaultRequirementProfilesRequestType

type PbmQueryDefaultRequirementProfilesRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// The datastores for which the default profiles are requested. For
	// legacy datastores we set
	// `DefaultProfileInfo.defaultProfile` to `null`.
	Datastores []PbmPlacementHub `xml:"datastores" json:"datastores"`
}

The parameters of `PbmProfileProfileManager.PbmQueryDefaultRequirementProfiles`.

type PbmQueryDefaultRequirementProfilesResponse

type PbmQueryDefaultRequirementProfilesResponse struct {
	Returnval []PbmDefaultProfileInfo `xml:"returnval" json:"returnval"`
}

type PbmQueryMatchingHub

type PbmQueryMatchingHub PbmQueryMatchingHubRequestType

type PbmQueryMatchingHubRequestType

type PbmQueryMatchingHubRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Candidate list of hubs, either datastores or storage pods or a
	// mix. If this parameter is not specified, the Server uses all
	// of the datastores and storage pods.
	HubsToSearch []PbmPlacementHub `xml:"hubsToSearch,omitempty" json:"hubsToSearch,omitempty"`
	// Storage requirement profile.
	Profile PbmProfileId `xml:"profile" json:"profile"`
}

The parameters of `PbmPlacementSolver.PbmQueryMatchingHub`.

type PbmQueryMatchingHubResponse

type PbmQueryMatchingHubResponse struct {
	Returnval []PbmPlacementHub `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmQueryMatchingHubWithSpecRequestType

type PbmQueryMatchingHubWithSpecRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Candidate list of hubs, either datastores or storage
	// pods or a mix. If this parameter is not specified, the Server uses
	// all of the datastores and storage pods for placement compatibility checking.
	HubsToSearch []PbmPlacementHub `xml:"hubsToSearch,omitempty" json:"hubsToSearch,omitempty"`
	// Storage profile creation specification.
	CreateSpec PbmCapabilityProfileCreateSpec `xml:"createSpec" json:"createSpec"`
}

The parameters of `PbmPlacementSolver.PbmQueryMatchingHubWithSpec`.

type PbmQueryMatchingHubWithSpecResponse

type PbmQueryMatchingHubWithSpecResponse struct {
	Returnval []PbmPlacementHub `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmQueryProfile

type PbmQueryProfile PbmQueryProfileRequestType

type PbmQueryProfileRequestType

type PbmQueryProfileRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Type of resource. You can specify only STORAGE.
	ResourceType PbmProfileResourceType `xml:"resourceType" json:"resourceType"`
	// Profile category. The string value must correspond
	// to one of the `PbmProfileCategoryEnum_enum` values.
	// If you do not specify a profile category, the method returns profiles in all
	// categories.
	ProfileCategory string `xml:"profileCategory,omitempty" json:"profileCategory,omitempty"`
}

The parameters of `PbmProfileProfileManager.PbmQueryProfile`.

type PbmQueryProfileResponse

type PbmQueryProfileResponse struct {
	Returnval []PbmProfileId `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmQueryProfileResult

type PbmQueryProfileResult struct {
	types.DynamicData

	// Reference to the virtual machine, virtual disk, or
	// datastore on which the query was performed.
	Object PbmServerObjectRef `xml:"object" json:"object"`
	// Array of identifiers for profiles which are associated with <code>object</code>.
	ProfileId []PbmProfileId `xml:"profileId,omitempty" json:"profileId,omitempty"`
	// Fault associated with the query, if there is one.
	Fault *types.LocalizedMethodFault `xml:"fault,omitempty" json:"fault,omitempty"`
}

The `PbmQueryProfileResult` data object identifies a virtual machine, virtual disk, or datastore and it lists the identifier(s) for the associated profile(s).

This structure may be used only with operations rendered under `/pbm`.

type PbmQueryReplicationGroupResult

type PbmQueryReplicationGroupResult struct {
	types.DynamicData

	// Reference to the virtual machine or virtual disk on which the query was performed.
	//
	// If the
	// query was performed for a virtual machine and all it's disks, this will reference each disk
	// and the virtual machine config individually.
	Object PbmServerObjectRef `xml:"object" json:"object"`
	// Replication group identifier which is associated with <code>object</code>.
	ReplicationGroupId *types.ReplicationGroupId `xml:"replicationGroupId,omitempty" json:"replicationGroupId,omitempty"`
	// Fault associated with the query, if there is one.
	Fault *types.LocalizedMethodFault `xml:"fault,omitempty" json:"fault,omitempty"`
}

The `PbmQueryReplicationGroupResult` data object identifies a virtual machine, or a virtual disk and lists the identifier(s) for the associated replication group.

This structure may be used only with operations rendered under `/pbm`.

type PbmQueryReplicationGroupsRequestType

type PbmQueryReplicationGroupsRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Array of server object references. Valid types are
	// `virtualMachine`,
	// `virtualMachineAndDisks`,
	// `virtualDiskId`,
	// `virtualDiskUUID`
	Entities []PbmServerObjectRef `xml:"entities,omitempty" json:"entities,omitempty"`
}

The parameters of `PbmReplicationManager.PbmQueryReplicationGroups`.

type PbmQueryReplicationGroupsResponse

type PbmQueryReplicationGroupsResponse struct {
	Returnval []PbmQueryReplicationGroupResult `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmQuerySpaceStatsForStorageContainerRequestType

type PbmQuerySpaceStatsForStorageContainerRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Entity for which space statistics are being requested i.e datastore.
	Datastore PbmServerObjectRef `xml:"datastore" json:"datastore"`
	// \- capability profile Ids.
	// If omitted, the statistics for the container
	// as a whole would be returned.
	CapabilityProfileId []PbmProfileId `xml:"capabilityProfileId,omitempty" json:"capabilityProfileId,omitempty"`
}

The parameters of `PbmProfileProfileManager.PbmQuerySpaceStatsForStorageContainer`.

type PbmQuerySpaceStatsForStorageContainerResponse

type PbmQuerySpaceStatsForStorageContainerResponse struct {
	Returnval []PbmDatastoreSpaceStatistics `xml:"returnval,omitempty" json:"returnval,omitempty"`
}

type PbmResetDefaultRequirementProfileRequestType

type PbmResetDefaultRequirementProfileRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Profile to reset.
	Profile *PbmProfileId `xml:"profile,omitempty" json:"profile,omitempty"`
}

The parameters of `PbmProfileProfileManager.PbmResetDefaultRequirementProfile`.

type PbmResetDefaultRequirementProfileResponse

type PbmResetDefaultRequirementProfileResponse struct {
}

type PbmResetVSanDefaultProfileRequestType

type PbmResetVSanDefaultProfileRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
}

type PbmResetVSanDefaultProfileResponse

type PbmResetVSanDefaultProfileResponse struct {
}

type PbmResourceInUse

type PbmResourceInUse struct {
	PbmFault

	// Type of resource that is in use.
	Type string `xml:"type,omitempty" json:"type,omitempty"`
	// Name of the instance of the resource that is in use.
	Name string `xml:"name,omitempty" json:"name,omitempty"`
}

A ResourceInUse fault indicating that some error has occurred because a resource was in use.

Information about the resource that is in use may be supplied.

This structure may be used only with operations rendered under `/pbm`.

type PbmResourceInUseFault

type PbmResourceInUseFault PbmResourceInUse

type PbmRetrieveContent

type PbmRetrieveContent PbmRetrieveContentRequestType

type PbmRetrieveContentRequestType

type PbmRetrieveContentRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Array of storage profile identifiers.
	ProfileIds []PbmProfileId `xml:"profileIds" json:"profileIds"`
}

The parameters of `PbmProfileProfileManager.PbmRetrieveContent`.

type PbmRetrieveContentResponse

type PbmRetrieveContentResponse struct {
	Returnval []BasePbmProfile `xml:"returnval,typeattr" json:"returnval"`
}

type PbmRetrieveServiceContentRequestType

type PbmRetrieveServiceContentRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
}

type PbmRetrieveServiceContentResponse

type PbmRetrieveServiceContentResponse struct {
	Returnval PbmServiceInstanceContent `xml:"returnval" json:"returnval"`
}

type PbmRollupComplianceResult

type PbmRollupComplianceResult struct {
	types.DynamicData

	// Indicates the earliest time that compliance was checked for any
	// of the entities in the rollup compliance check.
	//
	// The compliance
	// check time for a single entity is represented in the
	// `PbmComplianceResult*.*PbmComplianceResult.checkTime`
	// property. If the `PbmComplianceResult.checkTime`
	// property is unset for any of the objects in the <code>results</code>
	// array, the <code>oldestCheckTime</code> property will be unset.
	OldestCheckTime time.Time `xml:"oldestCheckTime" json:"oldestCheckTime"`
	// Virtual machine for which the rollup compliance was checked.
	Entity PbmServerObjectRef `xml:"entity" json:"entity"`
	// Overall compliance status of the virtual machine and its virtual disks.
	//
	// <code>overallComplianceStatus</code> is a string value that
	// corresponds to one of the
	// `PbmComplianceResult*.*PbmComplianceResult.complianceStatus`
	// values.
	//
	// The overall compliance status is determined by the following rules, applied in the order
	// listed:
	//     - If all the entities are <code>compliant</code>, the overall status is
	//       <code>compliant</code>.
	//     - Else if any entity's status is <code>outOfDate</code>, the overall status is
	//       <code>outOfDate</code>.
	//     - Else if any entity's status is <code>nonCompliant</code>, the overall status is
	//       <code>nonCompliant</code>.
	//     - Else if any entity's status is <code>unknown</code>, the overall status is
	//       <code>unknown</code>.
	//     - Else if any entity's status is <code>notApplicable</code>, the overall status is
	//       <code>notApplicable</code>.
	OverallComplianceStatus string `xml:"overallComplianceStatus" json:"overallComplianceStatus"`
	// Overall compliance task status of the virtual machine and its virtual
	// disks.
	//
	// <code>overallComplianceTaskStatus</code> is a string value that
	// corresponds to one of the `PbmComplianceResult`.
	// `PbmComplianceResult.complianceTaskStatus` values.
	OverallComplianceTaskStatus string `xml:"overallComplianceTaskStatus,omitempty" json:"overallComplianceTaskStatus,omitempty"`
	// Individual compliance results that make up the rollup.
	Result []PbmComplianceResult `xml:"result,omitempty" json:"result,omitempty"`
	// This property is set if the overall compliance task fails with some error.
	//
	// This
	// property indicates the causes of error. If there are multiple failures, it stores
	// these failure in this array.
	ErrorCause []types.LocalizedMethodFault `xml:"errorCause,omitempty" json:"errorCause,omitempty"`
	// Deprecated as of vSphere 2016, use
	// `PbmRollupComplianceResult.overallComplianceStatus`
	// to know if profile mismatch has occurred. If
	// overallComplianceStatus value is outOfDate, it means
	// profileMismatch has occurred.
	//
	// True if and only if `PbmComplianceResult`.
	//
	// `PbmComplianceResult.mismatch` is true for at least one
	// entity in the rollup compliance check.
	ProfileMismatch bool `xml:"profileMismatch" json:"profileMismatch"`
}

The `PbmRollupComplianceResult` data object identifies the virtual machine for which rollup compliance was checked, and it contains the overall status and a list of compliance result objects.

This structure may be used only with operations rendered under `/pbm`.

type PbmServerObjectRef

type PbmServerObjectRef struct {
	types.DynamicData

	// Type of vSphere Server object.
	//
	// The value of the <code>objectType</code> string
	// corresponds to one of the `PbmObjectType_enum`
	// enumerated type values.
	ObjectType string `xml:"objectType" json:"objectType"`
	// Unique identifier for the object.
	//
	// The value of <code>key</code> depends
	// on the <code>objectType</code>.
	//
	//
	// <table border="1"cellpadding="5">
	// <tr><td>`*PbmObjectType**</td><td>*`key value**</td></tr>
	// <tr><td>virtualMachine</td><td>_virtual-machine-MOR_</td></tr>
	// <tr><td>virtualDiskId</td>
	// <td>_virtual-disk-MOR_:_VirtualDisk.key_</td></tr>
	// <tr><td>datastore</td><td>_datastore-MOR_</td></tr>
	// <tr><td colspan="2"align="right">MOR = ManagedObjectReference</td></tr>
	// </table>
	Key string `xml:"key" json:"key"`
	// vCenter Server UUID; the <code>ServiceContent.about.instanceUuid</code>
	// property in the vSphere API.
	ServerUuid string `xml:"serverUuid,omitempty" json:"serverUuid,omitempty"`
}

The `PbmServerObjectRef` data object identifies a virtual machine, virtual disk attached to a virtual machine, a first class storage object or a datastore.

This structure may be used only with operations rendered under `/pbm`.

type PbmServiceInstanceContent

type PbmServiceInstanceContent struct {
	types.DynamicData

	// Contains information that identifies the Storage Policy service.
	AboutInfo PbmAboutInfo `xml:"aboutInfo" json:"aboutInfo"`
	// For internal use.
	//
	// Refers instance of `PbmSessionManager`.
	SessionManager types.ManagedObjectReference `xml:"sessionManager" json:"sessionManager"`
	// For internal use.
	//
	// Refers instance of `PbmCapabilityMetadataManager`.
	CapabilityMetadataManager types.ManagedObjectReference `xml:"capabilityMetadataManager" json:"capabilityMetadataManager"`
	// Provides access to the Storage Policy ProfileManager.
	//
	// Refers instance of `PbmProfileProfileManager`.
	ProfileManager types.ManagedObjectReference `xml:"profileManager" json:"profileManager"`
	// Provides access to the Storage Policy ComplianceManager.
	//
	// Refers instance of `PbmComplianceManager`.
	ComplianceManager types.ManagedObjectReference `xml:"complianceManager" json:"complianceManager"`
	// Provides access to the Storage Policy PlacementSolver.
	//
	// Refers instance of `PbmPlacementSolver`.
	PlacementSolver types.ManagedObjectReference `xml:"placementSolver" json:"placementSolver"`
	// Provides access to the Storage Policy ReplicationManager.
	//
	// Refers instance of `PbmReplicationManager`.
	ReplicationManager *types.ManagedObjectReference `xml:"replicationManager,omitempty" json:"replicationManager,omitempty"`
}

The `PbmServiceInstanceContent` data object defines properties for the `PbmServiceInstance` managed object.

This structure may be used only with operations rendered under `/pbm`.

type PbmSystemCreatedProfileType

type PbmSystemCreatedProfileType string

System pre-created profile types.

type PbmUpdate

type PbmUpdate PbmUpdateRequestType

type PbmUpdateRequestType

type PbmUpdateRequestType struct {
	This types.ManagedObjectReference `xml:"_this" json:"_this"`
	// Profile identifier.
	ProfileId PbmProfileId `xml:"profileId" json:"profileId"`
	// Capability-based update specification.
	UpdateSpec PbmCapabilityProfileUpdateSpec `xml:"updateSpec" json:"updateSpec"`
}

The parameters of `PbmProfileProfileManager.PbmUpdate`.

type PbmUpdateResponse

type PbmUpdateResponse struct {
}

type PbmVaioDataServiceInfo

type PbmVaioDataServiceInfo struct {
	PbmLineOfServiceInfo
}

Information about a supported data service provided using vSphere APIs for IO Filtering (VAIO) data service provider.

This structure may be used only with operations rendered under `/pbm`.

type PbmVmOperation

type PbmVmOperation string

The `PbmVmOperation_enum` enumerated type defines the provisioning operation being performed on the virtual machine.

type PbmVvolType

type PbmVvolType string

The `PbmVvolType_enum` enumeration type defines VVOL types.

VvolType's are referenced to specify which objectType to fetch for default capability.

type VersionURI added in v0.18.0

type VersionURI string

Jump to

Keyboard shortcuts

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