volumegroups

package
v0.20230324.1144947 Latest Latest
Warning

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

Go to latest
Published: Mar 24, 2023 License: MPL-2.0 Imports: 8 Imported by: 0

README

github.com/hashicorp/go-azure-sdk/resource-manager/netapp/2022-01-01/volumegroups Documentation

The volumegroups SDK allows for interaction with the Azure Resource Manager Service netapp (API Version 2022-01-01).

This readme covers example usages, but further information on using this SDK can be found in the project root.

Import Path

import "github.com/hashicorp/go-azure-sdk/resource-manager/netapp/2022-01-01/volumegroups"

Client Initialization

client := volumegroups.NewVolumeGroupsClientWithBaseURI("https://management.azure.com")
client.Client.Authorizer = authorizer

Example Usage: VolumeGroupsClient.VolumeGroupsCreate

ctx := context.TODO()
id := volumegroups.NewVolumeGroupID("12345678-1234-9876-4563-123456789012", "example-resource-group", "netAppAccountValue", "volumeGroupValue")

payload := volumegroups.VolumeGroupDetails{
	// ...
}


if err := client.VolumeGroupsCreateThenPoll(ctx, id, payload); err != nil {
	// handle the error
}

Example Usage: VolumeGroupsClient.VolumeGroupsDelete

ctx := context.TODO()
id := volumegroups.NewVolumeGroupID("12345678-1234-9876-4563-123456789012", "example-resource-group", "netAppAccountValue", "volumeGroupValue")

if err := client.VolumeGroupsDeleteThenPoll(ctx, id); err != nil {
	// handle the error
}

Example Usage: VolumeGroupsClient.VolumeGroupsGet

ctx := context.TODO()
id := volumegroups.NewVolumeGroupID("12345678-1234-9876-4563-123456789012", "example-resource-group", "netAppAccountValue", "volumeGroupValue")

read, err := client.VolumeGroupsGet(ctx, id)
if err != nil {
	// handle the error
}
if model := read.Model; model != nil {
	// do something with the model/response object
}

Example Usage: VolumeGroupsClient.VolumeGroupsListByNetAppAccount

ctx := context.TODO()
id := volumegroups.NewNetAppAccountID("12345678-1234-9876-4563-123456789012", "example-resource-group", "netAppAccountValue")

read, err := client.VolumeGroupsListByNetAppAccount(ctx, id)
if err != nil {
	// handle the error
}
if model := read.Model; model != nil {
	// do something with the model/response object
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PossibleValuesForApplicationType

func PossibleValuesForApplicationType() []string

func PossibleValuesForAvsDataStore

func PossibleValuesForAvsDataStore() []string

func PossibleValuesForChownMode

func PossibleValuesForChownMode() []string

func PossibleValuesForEnableSubvolumes

func PossibleValuesForEnableSubvolumes() []string

func PossibleValuesForEncryptionKeySource

func PossibleValuesForEncryptionKeySource() []string

func PossibleValuesForEndpointType

func PossibleValuesForEndpointType() []string

func PossibleValuesForNetworkFeatures

func PossibleValuesForNetworkFeatures() []string

func PossibleValuesForReplicationSchedule

func PossibleValuesForReplicationSchedule() []string

func PossibleValuesForSecurityStyle

func PossibleValuesForSecurityStyle() []string

func PossibleValuesForServiceLevel

func PossibleValuesForServiceLevel() []string

func PossibleValuesForVolumeStorageToNetworkProximity

func PossibleValuesForVolumeStorageToNetworkProximity() []string

func ValidateNetAppAccountID

func ValidateNetAppAccountID(input interface{}, key string) (warnings []string, errors []error)

ValidateNetAppAccountID checks that 'input' can be parsed as a Net App Account ID

func ValidateVolumeGroupID

func ValidateVolumeGroupID(input interface{}, key string) (warnings []string, errors []error)

ValidateVolumeGroupID checks that 'input' can be parsed as a Volume Group ID

Types

type ApplicationType

type ApplicationType string
const (
	ApplicationTypeSAPNegativeHANA ApplicationType = "SAP-HANA"
)

type AvsDataStore

type AvsDataStore string
const (
	AvsDataStoreDisabled AvsDataStore = "Disabled"
	AvsDataStoreEnabled  AvsDataStore = "Enabled"
)

type ChownMode

type ChownMode string
const (
	ChownModeRestricted   ChownMode = "Restricted"
	ChownModeUnrestricted ChownMode = "Unrestricted"
)

type EnableSubvolumes

type EnableSubvolumes string
const (
	EnableSubvolumesDisabled EnableSubvolumes = "Disabled"
	EnableSubvolumesEnabled  EnableSubvolumes = "Enabled"
)

type EncryptionKeySource

type EncryptionKeySource string
const (
	EncryptionKeySourceMicrosoftPointNetApp EncryptionKeySource = "Microsoft.NetApp"
)

type EndpointType

type EndpointType string
const (
	EndpointTypeDst EndpointType = "dst"
	EndpointTypeSrc EndpointType = "src"
)

type ExportPolicyRule

type ExportPolicyRule struct {
	AllowedClients      *string    `json:"allowedClients,omitempty"`
	ChownMode           *ChownMode `json:"chownMode,omitempty"`
	Cifs                *bool      `json:"cifs,omitempty"`
	HasRootAccess       *bool      `json:"hasRootAccess,omitempty"`
	Kerberos5ReadOnly   *bool      `json:"kerberos5ReadOnly,omitempty"`
	Kerberos5ReadWrite  *bool      `json:"kerberos5ReadWrite,omitempty"`
	Kerberos5iReadOnly  *bool      `json:"kerberos5iReadOnly,omitempty"`
	Kerberos5iReadWrite *bool      `json:"kerberos5iReadWrite,omitempty"`
	Kerberos5pReadOnly  *bool      `json:"kerberos5pReadOnly,omitempty"`
	Kerberos5pReadWrite *bool      `json:"kerberos5pReadWrite,omitempty"`
	Nfsv3               *bool      `json:"nfsv3,omitempty"`
	Nfsv41              *bool      `json:"nfsv41,omitempty"`
	RuleIndex           *int64     `json:"ruleIndex,omitempty"`
	UnixReadOnly        *bool      `json:"unixReadOnly,omitempty"`
	UnixReadWrite       *bool      `json:"unixReadWrite,omitempty"`
}

type MountTargetProperties

type MountTargetProperties struct {
	FileSystemId  string  `json:"fileSystemId"`
	IPAddress     *string `json:"ipAddress,omitempty"`
	MountTargetId *string `json:"mountTargetId,omitempty"`
	SmbServerFqdn *string `json:"smbServerFqdn,omitempty"`
}

type NetAppAccountId

type NetAppAccountId struct {
	SubscriptionId    string
	ResourceGroupName string
	NetAppAccountName string
}

NetAppAccountId is a struct representing the Resource ID for a Net App Account

func NewNetAppAccountID

func NewNetAppAccountID(subscriptionId string, resourceGroupName string, netAppAccountName string) NetAppAccountId

NewNetAppAccountID returns a new NetAppAccountId struct

func ParseNetAppAccountID

func ParseNetAppAccountID(input string) (*NetAppAccountId, error)

ParseNetAppAccountID parses 'input' into a NetAppAccountId

func ParseNetAppAccountIDInsensitively

func ParseNetAppAccountIDInsensitively(input string) (*NetAppAccountId, error)

ParseNetAppAccountIDInsensitively parses 'input' case-insensitively into a NetAppAccountId note: this method should only be used for API response data and not user input

func (NetAppAccountId) ID

func (id NetAppAccountId) ID() string

ID returns the formatted Net App Account ID

func (NetAppAccountId) Segments

func (id NetAppAccountId) Segments() []resourceids.Segment

Segments returns a slice of Resource ID Segments which comprise this Net App Account ID

func (NetAppAccountId) String

func (id NetAppAccountId) String() string

String returns a human-readable description of this Net App Account ID

type NetworkFeatures

type NetworkFeatures string
const (
	NetworkFeaturesBasic    NetworkFeatures = "Basic"
	NetworkFeaturesStandard NetworkFeatures = "Standard"
)

type PlacementKeyValuePairs

type PlacementKeyValuePairs struct {
	Key   string `json:"key"`
	Value string `json:"value"`
}

type ReplicationObject

type ReplicationObject struct {
	EndpointType           *EndpointType        `json:"endpointType,omitempty"`
	RemoteVolumeRegion     *string              `json:"remoteVolumeRegion,omitempty"`
	RemoteVolumeResourceId string               `json:"remoteVolumeResourceId"`
	ReplicationId          *string              `json:"replicationId,omitempty"`
	ReplicationSchedule    *ReplicationSchedule `json:"replicationSchedule,omitempty"`
}

type ReplicationSchedule

type ReplicationSchedule string
const (
	ReplicationScheduleDaily           ReplicationSchedule = "daily"
	ReplicationScheduleHourly          ReplicationSchedule = "hourly"
	ReplicationScheduleOneZerominutely ReplicationSchedule = "_10minutely"
)

type SecurityStyle

type SecurityStyle string
const (
	SecurityStyleNtfs SecurityStyle = "ntfs"
	SecurityStyleUnix SecurityStyle = "unix"
)

type ServiceLevel

type ServiceLevel string
const (
	ServiceLevelPremium     ServiceLevel = "Premium"
	ServiceLevelStandard    ServiceLevel = "Standard"
	ServiceLevelStandardZRS ServiceLevel = "StandardZRS"
	ServiceLevelUltra       ServiceLevel = "Ultra"
)

type VolumeBackupProperties

type VolumeBackupProperties struct {
	BackupEnabled  *bool   `json:"backupEnabled,omitempty"`
	BackupPolicyId *string `json:"backupPolicyId,omitempty"`
	PolicyEnforced *bool   `json:"policyEnforced,omitempty"`
	VaultId        *string `json:"vaultId,omitempty"`
}

type VolumeGroup

type VolumeGroup struct {
	Id         *string                    `json:"id,omitempty"`
	Location   *string                    `json:"location,omitempty"`
	Name       *string                    `json:"name,omitempty"`
	Properties *VolumeGroupListProperties `json:"properties,omitempty"`
	Type       *string                    `json:"type,omitempty"`
}

type VolumeGroupDetails

type VolumeGroupDetails struct {
	Id         *string                `json:"id,omitempty"`
	Location   *string                `json:"location,omitempty"`
	Name       *string                `json:"name,omitempty"`
	Properties *VolumeGroupProperties `json:"properties,omitempty"`
	Type       *string                `json:"type,omitempty"`
}

type VolumeGroupId

type VolumeGroupId struct {
	SubscriptionId    string
	ResourceGroupName string
	NetAppAccountName string
	VolumeGroupName   string
}

VolumeGroupId is a struct representing the Resource ID for a Volume Group

func NewVolumeGroupID

func NewVolumeGroupID(subscriptionId string, resourceGroupName string, netAppAccountName string, volumeGroupName string) VolumeGroupId

NewVolumeGroupID returns a new VolumeGroupId struct

func ParseVolumeGroupID

func ParseVolumeGroupID(input string) (*VolumeGroupId, error)

ParseVolumeGroupID parses 'input' into a VolumeGroupId

func ParseVolumeGroupIDInsensitively

func ParseVolumeGroupIDInsensitively(input string) (*VolumeGroupId, error)

ParseVolumeGroupIDInsensitively parses 'input' case-insensitively into a VolumeGroupId note: this method should only be used for API response data and not user input

func (VolumeGroupId) ID

func (id VolumeGroupId) ID() string

ID returns the formatted Volume Group ID

func (VolumeGroupId) Segments

func (id VolumeGroupId) Segments() []resourceids.Segment

Segments returns a slice of Resource ID Segments which comprise this Volume Group ID

func (VolumeGroupId) String

func (id VolumeGroupId) String() string

String returns a human-readable description of this Volume Group ID

type VolumeGroupList

type VolumeGroupList struct {
	Value *[]VolumeGroup `json:"value,omitempty"`
}

type VolumeGroupListProperties

type VolumeGroupListProperties struct {
	GroupMetaData     *VolumeGroupMetaData `json:"groupMetaData,omitempty"`
	ProvisioningState *string              `json:"provisioningState,omitempty"`
}

type VolumeGroupMetaData

type VolumeGroupMetaData struct {
	ApplicationIdentifier *string                   `json:"applicationIdentifier,omitempty"`
	ApplicationType       *ApplicationType          `json:"applicationType,omitempty"`
	DeploymentSpecId      *string                   `json:"deploymentSpecId,omitempty"`
	GlobalPlacementRules  *[]PlacementKeyValuePairs `json:"globalPlacementRules,omitempty"`
	GroupDescription      *string                   `json:"groupDescription,omitempty"`
	VolumesCount          *int64                    `json:"volumesCount,omitempty"`
}

type VolumeGroupProperties

type VolumeGroupProperties struct {
	GroupMetaData     *VolumeGroupMetaData           `json:"groupMetaData,omitempty"`
	ProvisioningState *string                        `json:"provisioningState,omitempty"`
	Volumes           *[]VolumeGroupVolumeProperties `json:"volumes,omitempty"`
}

type VolumeGroupVolumeProperties

type VolumeGroupVolumeProperties struct {
	Id         *string            `json:"id,omitempty"`
	Name       *string            `json:"name,omitempty"`
	Properties VolumeProperties   `json:"properties"`
	Tags       *map[string]string `json:"tags,omitempty"`
	Type       *string            `json:"type,omitempty"`
}

type VolumeGroupsClient

type VolumeGroupsClient struct {
	Client autorest.Client
	// contains filtered or unexported fields
}

func NewVolumeGroupsClientWithBaseURI

func NewVolumeGroupsClientWithBaseURI(endpoint string) VolumeGroupsClient

func (VolumeGroupsClient) VolumeGroupsCreate

VolumeGroupsCreate ...

func (VolumeGroupsClient) VolumeGroupsCreateThenPoll

func (c VolumeGroupsClient) VolumeGroupsCreateThenPoll(ctx context.Context, id VolumeGroupId, input VolumeGroupDetails) error

VolumeGroupsCreateThenPoll performs VolumeGroupsCreate then polls until it's completed

func (VolumeGroupsClient) VolumeGroupsDelete

func (c VolumeGroupsClient) VolumeGroupsDelete(ctx context.Context, id VolumeGroupId) (result VolumeGroupsDeleteOperationResponse, err error)

VolumeGroupsDelete ...

func (VolumeGroupsClient) VolumeGroupsDeleteThenPoll

func (c VolumeGroupsClient) VolumeGroupsDeleteThenPoll(ctx context.Context, id VolumeGroupId) error

VolumeGroupsDeleteThenPoll performs VolumeGroupsDelete then polls until it's completed

func (VolumeGroupsClient) VolumeGroupsGet

func (c VolumeGroupsClient) VolumeGroupsGet(ctx context.Context, id VolumeGroupId) (result VolumeGroupsGetOperationResponse, err error)

VolumeGroupsGet ...

func (VolumeGroupsClient) VolumeGroupsListByNetAppAccount

func (c VolumeGroupsClient) VolumeGroupsListByNetAppAccount(ctx context.Context, id NetAppAccountId) (result VolumeGroupsListByNetAppAccountOperationResponse, err error)

VolumeGroupsListByNetAppAccount ...

type VolumeGroupsCreateOperationResponse

type VolumeGroupsCreateOperationResponse struct {
	Poller       polling.LongRunningPoller
	HttpResponse *http.Response
}

type VolumeGroupsDeleteOperationResponse

type VolumeGroupsDeleteOperationResponse struct {
	Poller       polling.LongRunningPoller
	HttpResponse *http.Response
}

type VolumeGroupsGetOperationResponse

type VolumeGroupsGetOperationResponse struct {
	HttpResponse *http.Response
	Model        *VolumeGroupDetails
}

type VolumeGroupsListByNetAppAccountOperationResponse

type VolumeGroupsListByNetAppAccountOperationResponse struct {
	HttpResponse *http.Response
	Model        *VolumeGroupList
}

type VolumeProperties

type VolumeProperties struct {
	AvsDataStore              *AvsDataStore                    `json:"avsDataStore,omitempty"`
	BackupId                  *string                          `json:"backupId,omitempty"`
	BaremetalTenantId         *string                          `json:"baremetalTenantId,omitempty"`
	CapacityPoolResourceId    *string                          `json:"capacityPoolResourceId,omitempty"`
	CloneProgress             *int64                           `json:"cloneProgress,omitempty"`
	CoolAccess                *bool                            `json:"coolAccess,omitempty"`
	CoolnessPeriod            *int64                           `json:"coolnessPeriod,omitempty"`
	CreationToken             string                           `json:"creationToken"`
	DataProtection            *VolumePropertiesDataProtection  `json:"dataProtection,omitempty"`
	DefaultGroupQuotaInKiBs   *int64                           `json:"defaultGroupQuotaInKiBs,omitempty"`
	DefaultUserQuotaInKiBs    *int64                           `json:"defaultUserQuotaInKiBs,omitempty"`
	EnableSubvolumes          *EnableSubvolumes                `json:"enableSubvolumes,omitempty"`
	Encrypted                 *bool                            `json:"encrypted,omitempty"`
	EncryptionKeySource       *EncryptionKeySource             `json:"encryptionKeySource,omitempty"`
	ExportPolicy              *VolumePropertiesExportPolicy    `json:"exportPolicy,omitempty"`
	FileSystemId              *string                          `json:"fileSystemId,omitempty"`
	IsDefaultQuotaEnabled     *bool                            `json:"isDefaultQuotaEnabled,omitempty"`
	IsRestoring               *bool                            `json:"isRestoring,omitempty"`
	KerberosEnabled           *bool                            `json:"kerberosEnabled,omitempty"`
	LdapEnabled               *bool                            `json:"ldapEnabled,omitempty"`
	MaximumNumberOfFiles      *int64                           `json:"maximumNumberOfFiles,omitempty"`
	MountTargets              *[]MountTargetProperties         `json:"mountTargets,omitempty"`
	NetworkFeatures           *NetworkFeatures                 `json:"networkFeatures,omitempty"`
	NetworkSiblingSetId       *string                          `json:"networkSiblingSetId,omitempty"`
	PlacementRules            *[]PlacementKeyValuePairs        `json:"placementRules,omitempty"`
	ProtocolTypes             *[]string                        `json:"protocolTypes,omitempty"`
	ProvisioningState         *string                          `json:"provisioningState,omitempty"`
	ProximityPlacementGroup   *string                          `json:"proximityPlacementGroup,omitempty"`
	SecurityStyle             *SecurityStyle                   `json:"securityStyle,omitempty"`
	ServiceLevel              *ServiceLevel                    `json:"serviceLevel,omitempty"`
	SmbContinuouslyAvailable  *bool                            `json:"smbContinuouslyAvailable,omitempty"`
	SmbEncryption             *bool                            `json:"smbEncryption,omitempty"`
	SnapshotDirectoryVisible  *bool                            `json:"snapshotDirectoryVisible,omitempty"`
	SnapshotId                *string                          `json:"snapshotId,omitempty"`
	StorageToNetworkProximity *VolumeStorageToNetworkProximity `json:"storageToNetworkProximity,omitempty"`
	SubnetId                  string                           `json:"subnetId"`
	T2Network                 *string                          `json:"t2Network,omitempty"`
	ThroughputMibps           *float64                         `json:"throughputMibps,omitempty"`
	UnixPermissions           *string                          `json:"unixPermissions,omitempty"`
	UsageThreshold            int64                            `json:"usageThreshold"`
	VolumeGroupName           *string                          `json:"volumeGroupName,omitempty"`
	VolumeSpecName            *string                          `json:"volumeSpecName,omitempty"`
	VolumeType                *string                          `json:"volumeType,omitempty"`
}

type VolumePropertiesDataProtection

type VolumePropertiesDataProtection struct {
	Backup      *VolumeBackupProperties   `json:"backup,omitempty"`
	Replication *ReplicationObject        `json:"replication,omitempty"`
	Snapshot    *VolumeSnapshotProperties `json:"snapshot,omitempty"`
}

type VolumePropertiesExportPolicy

type VolumePropertiesExportPolicy struct {
	Rules *[]ExportPolicyRule `json:"rules,omitempty"`
}

type VolumeSnapshotProperties

type VolumeSnapshotProperties struct {
	SnapshotPolicyId *string `json:"snapshotPolicyId,omitempty"`
}

type VolumeStorageToNetworkProximity

type VolumeStorageToNetworkProximity string
const (
	VolumeStorageToNetworkProximityDefault VolumeStorageToNetworkProximity = "Default"
	VolumeStorageToNetworkProximityTOne    VolumeStorageToNetworkProximity = "T1"
	VolumeStorageToNetworkProximityTTwo    VolumeStorageToNetworkProximity = "T2"
)

Jump to

Keyboard shortcuts

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