backuppolicies

package
v0.20240923.1142107 Latest Latest
Warning

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

Go to latest
Published: Sep 23, 2024 License: MPL-2.0 Imports: 12 Imported by: 1

README

github.com/hashicorp/go-azure-sdk/resource-manager/recoveryservicesbackup/2023-06-01/backuppolicies Documentation

The backuppolicies SDK allows for interaction with Azure Resource Manager recoveryservicesbackup (API Version 2023-06-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/recoveryservicesbackup/2023-06-01/backuppolicies"

Client Initialization

client := backuppolicies.NewBackupPoliciesClientWithBaseURI("https://management.azure.com")
client.Client.Authorizer = authorizer

Example Usage: BackupPoliciesClient.List

ctx := context.TODO()
id := backuppolicies.NewVaultID("12345678-1234-9876-4563-123456789012", "example-resource-group", "vaultName")

// alternatively `client.List(ctx, id, backuppolicies.DefaultListOperationOptions())` can be used to do batched pagination
items, err := client.ListComplete(ctx, id, backuppolicies.DefaultListOperationOptions())
if err != nil {
	// handle the error
}
for _, item := range items {
	// do something
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PossibleValuesForDayOfWeek

func PossibleValuesForDayOfWeek() []string

func PossibleValuesForIAASVMPolicyType

func PossibleValuesForIAASVMPolicyType() []string

func PossibleValuesForMonthOfYear

func PossibleValuesForMonthOfYear() []string

func PossibleValuesForPolicyType

func PossibleValuesForPolicyType() []string

func PossibleValuesForRetentionDurationType

func PossibleValuesForRetentionDurationType() []string

func PossibleValuesForRetentionScheduleFormat

func PossibleValuesForRetentionScheduleFormat() []string

func PossibleValuesForScheduleRunType

func PossibleValuesForScheduleRunType() []string

func PossibleValuesForTieringMode

func PossibleValuesForTieringMode() []string

func PossibleValuesForWeekOfMonth

func PossibleValuesForWeekOfMonth() []string

func PossibleValuesForWorkloadType

func PossibleValuesForWorkloadType() []string

func ValidateVaultID

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

ValidateVaultID checks that 'input' can be parsed as a Vault ID

Types

type AzureFileShareProtectionPolicy

type AzureFileShareProtectionPolicy struct {
	RetentionPolicy      RetentionPolicy       `json:"retentionPolicy"`
	SchedulePolicy       SchedulePolicy        `json:"schedulePolicy"`
	TimeZone             *string               `json:"timeZone,omitempty"`
	VaultRetentionPolicy *VaultRetentionPolicy `json:"vaultRetentionPolicy,omitempty"`
	WorkLoadType         *WorkloadType         `json:"workLoadType,omitempty"`

	BackupManagementType           string    `json:"backupManagementType"`
	ProtectedItemsCount            *int64    `json:"protectedItemsCount,omitempty"`
	ResourceGuardOperationRequests *[]string `json:"resourceGuardOperationRequests,omitempty"`
}

func (AzureFileShareProtectionPolicy) MarshalJSON

func (s AzureFileShareProtectionPolicy) MarshalJSON() ([]byte, error)

func (AzureFileShareProtectionPolicy) ProtectionPolicy added in v0.20240920.1135249

func (*AzureFileShareProtectionPolicy) UnmarshalJSON

func (s *AzureFileShareProtectionPolicy) UnmarshalJSON(bytes []byte) error

type AzureIaaSVMProtectionPolicy

type AzureIaaSVMProtectionPolicy struct {
	InstantRPDetails              *InstantRPAdditionalDetails `json:"instantRPDetails,omitempty"`
	InstantRpRetentionRangeInDays *int64                      `json:"instantRpRetentionRangeInDays,omitempty"`
	PolicyType                    *IAASVMPolicyType           `json:"policyType,omitempty"`
	RetentionPolicy               RetentionPolicy             `json:"retentionPolicy"`
	SchedulePolicy                SchedulePolicy              `json:"schedulePolicy"`
	TieringPolicy                 *map[string]TieringPolicy   `json:"tieringPolicy,omitempty"`
	TimeZone                      *string                     `json:"timeZone,omitempty"`

	BackupManagementType           string    `json:"backupManagementType"`
	ProtectedItemsCount            *int64    `json:"protectedItemsCount,omitempty"`
	ResourceGuardOperationRequests *[]string `json:"resourceGuardOperationRequests,omitempty"`
}

func (AzureIaaSVMProtectionPolicy) MarshalJSON

func (s AzureIaaSVMProtectionPolicy) MarshalJSON() ([]byte, error)

func (AzureIaaSVMProtectionPolicy) ProtectionPolicy added in v0.20240920.1135249

func (*AzureIaaSVMProtectionPolicy) UnmarshalJSON

func (s *AzureIaaSVMProtectionPolicy) UnmarshalJSON(bytes []byte) error

type AzureSqlProtectionPolicy

type AzureSqlProtectionPolicy struct {
	RetentionPolicy RetentionPolicy `json:"retentionPolicy"`

	BackupManagementType           string    `json:"backupManagementType"`
	ProtectedItemsCount            *int64    `json:"protectedItemsCount,omitempty"`
	ResourceGuardOperationRequests *[]string `json:"resourceGuardOperationRequests,omitempty"`
}

func (AzureSqlProtectionPolicy) MarshalJSON

func (s AzureSqlProtectionPolicy) MarshalJSON() ([]byte, error)

func (AzureSqlProtectionPolicy) ProtectionPolicy added in v0.20240920.1135249

func (*AzureSqlProtectionPolicy) UnmarshalJSON

func (s *AzureSqlProtectionPolicy) UnmarshalJSON(bytes []byte) error

type AzureVMWorkloadProtectionPolicy

type AzureVMWorkloadProtectionPolicy struct {
	MakePolicyConsistent *bool                  `json:"makePolicyConsistent,omitempty"`
	Settings             *Settings              `json:"settings,omitempty"`
	SubProtectionPolicy  *[]SubProtectionPolicy `json:"subProtectionPolicy,omitempty"`
	WorkLoadType         *WorkloadType          `json:"workLoadType,omitempty"`

	BackupManagementType           string    `json:"backupManagementType"`
	ProtectedItemsCount            *int64    `json:"protectedItemsCount,omitempty"`
	ResourceGuardOperationRequests *[]string `json:"resourceGuardOperationRequests,omitempty"`
}

func (AzureVMWorkloadProtectionPolicy) MarshalJSON

func (s AzureVMWorkloadProtectionPolicy) MarshalJSON() ([]byte, error)

func (AzureVMWorkloadProtectionPolicy) ProtectionPolicy added in v0.20240920.1135249

type BackupPoliciesClient

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

func NewBackupPoliciesClientWithBaseURI

func NewBackupPoliciesClientWithBaseURI(endpoint string) BackupPoliciesClient

func (BackupPoliciesClient) List

List ...

func (BackupPoliciesClient) ListComplete

ListComplete retrieves all of the results into a single object

func (BackupPoliciesClient) ListCompleteMatchingPredicate

func (c BackupPoliciesClient) ListCompleteMatchingPredicate(ctx context.Context, id VaultId, options ListOperationOptions, predicate ProtectionPolicyResourceOperationPredicate) (resp ListCompleteResult, err error)

ListCompleteMatchingPredicate retrieves all of the results and then applied the predicate

type BaseProtectionPolicyImpl added in v0.20240920.1135249

type BaseProtectionPolicyImpl struct {
	BackupManagementType           string    `json:"backupManagementType"`
	ProtectedItemsCount            *int64    `json:"protectedItemsCount,omitempty"`
	ResourceGuardOperationRequests *[]string `json:"resourceGuardOperationRequests,omitempty"`
}

func (BaseProtectionPolicyImpl) ProtectionPolicy added in v0.20240920.1135249

type BaseRetentionPolicyImpl added in v0.20240920.1135249

type BaseRetentionPolicyImpl struct {
	RetentionPolicyType string `json:"retentionPolicyType"`
}

func (BaseRetentionPolicyImpl) RetentionPolicy added in v0.20240920.1135249

type BaseSchedulePolicyImpl added in v0.20240920.1135249

type BaseSchedulePolicyImpl struct {
	SchedulePolicyType string `json:"schedulePolicyType"`
}

func (BaseSchedulePolicyImpl) SchedulePolicy added in v0.20240920.1135249

type DailyRetentionFormat

type DailyRetentionFormat struct {
	DaysOfTheMonth *[]Day `json:"daysOfTheMonth,omitempty"`
}

type DailyRetentionSchedule

type DailyRetentionSchedule struct {
	RetentionDuration *RetentionDuration `json:"retentionDuration,omitempty"`
	RetentionTimes    *[]string          `json:"retentionTimes,omitempty"`
}

type DailySchedule

type DailySchedule struct {
	ScheduleRunTimes *[]string `json:"scheduleRunTimes,omitempty"`
}

type Day

type Day struct {
	Date   *int64 `json:"date,omitempty"`
	IsLast *bool  `json:"isLast,omitempty"`
}

type DayOfWeek

type DayOfWeek string
const (
	DayOfWeekFriday    DayOfWeek = "Friday"
	DayOfWeekMonday    DayOfWeek = "Monday"
	DayOfWeekSaturday  DayOfWeek = "Saturday"
	DayOfWeekSunday    DayOfWeek = "Sunday"
	DayOfWeekThursday  DayOfWeek = "Thursday"
	DayOfWeekTuesday   DayOfWeek = "Tuesday"
	DayOfWeekWednesday DayOfWeek = "Wednesday"
)

type GenericProtectionPolicy

type GenericProtectionPolicy struct {
	FabricName          *string                `json:"fabricName,omitempty"`
	SubProtectionPolicy *[]SubProtectionPolicy `json:"subProtectionPolicy,omitempty"`
	TimeZone            *string                `json:"timeZone,omitempty"`

	BackupManagementType           string    `json:"backupManagementType"`
	ProtectedItemsCount            *int64    `json:"protectedItemsCount,omitempty"`
	ResourceGuardOperationRequests *[]string `json:"resourceGuardOperationRequests,omitempty"`
}

func (GenericProtectionPolicy) MarshalJSON

func (s GenericProtectionPolicy) MarshalJSON() ([]byte, error)

func (GenericProtectionPolicy) ProtectionPolicy added in v0.20240920.1135249

type HourlySchedule

type HourlySchedule struct {
	Interval                *int64  `json:"interval,omitempty"`
	ScheduleWindowDuration  *int64  `json:"scheduleWindowDuration,omitempty"`
	ScheduleWindowStartTime *string `json:"scheduleWindowStartTime,omitempty"`
}

func (*HourlySchedule) GetScheduleWindowStartTimeAsTime

func (o *HourlySchedule) GetScheduleWindowStartTimeAsTime() (*time.Time, error)

func (*HourlySchedule) SetScheduleWindowStartTimeAsTime

func (o *HourlySchedule) SetScheduleWindowStartTimeAsTime(input time.Time)

type IAASVMPolicyType

type IAASVMPolicyType string
const (
	IAASVMPolicyTypeInvalid IAASVMPolicyType = "Invalid"
	IAASVMPolicyTypeVOne    IAASVMPolicyType = "V1"
	IAASVMPolicyTypeVTwo    IAASVMPolicyType = "V2"
)

type InstantRPAdditionalDetails

type InstantRPAdditionalDetails struct {
	AzureBackupRGNamePrefix *string `json:"azureBackupRGNamePrefix,omitempty"`
	AzureBackupRGNameSuffix *string `json:"azureBackupRGNameSuffix,omitempty"`
}

type ListCompleteResult

type ListCompleteResult struct {
	Items []ProtectionPolicyResource
}

type ListOperationOptions

type ListOperationOptions struct {
	Filter *string
}

func DefaultListOperationOptions

func DefaultListOperationOptions() ListOperationOptions

type ListOperationResponse

type ListOperationResponse struct {
	HttpResponse *http.Response
	Model        *[]ProtectionPolicyResource
	// contains filtered or unexported fields
}

func (ListOperationResponse) HasMore

func (r ListOperationResponse) HasMore() bool

func (ListOperationResponse) LoadMore

func (r ListOperationResponse) LoadMore(ctx context.Context) (resp ListOperationResponse, err error)

type LogSchedulePolicy

type LogSchedulePolicy struct {
	ScheduleFrequencyInMins *int64 `json:"scheduleFrequencyInMins,omitempty"`

	SchedulePolicyType string `json:"schedulePolicyType"`
}

func (LogSchedulePolicy) MarshalJSON

func (s LogSchedulePolicy) MarshalJSON() ([]byte, error)

func (LogSchedulePolicy) SchedulePolicy added in v0.20240920.1135249

func (s LogSchedulePolicy) SchedulePolicy() BaseSchedulePolicyImpl

type LongTermRetentionPolicy

type LongTermRetentionPolicy struct {
	DailySchedule   *DailyRetentionSchedule   `json:"dailySchedule,omitempty"`
	MonthlySchedule *MonthlyRetentionSchedule `json:"monthlySchedule,omitempty"`
	WeeklySchedule  *WeeklyRetentionSchedule  `json:"weeklySchedule,omitempty"`
	YearlySchedule  *YearlyRetentionSchedule  `json:"yearlySchedule,omitempty"`

	RetentionPolicyType string `json:"retentionPolicyType"`
}

func (LongTermRetentionPolicy) MarshalJSON

func (s LongTermRetentionPolicy) MarshalJSON() ([]byte, error)

func (LongTermRetentionPolicy) RetentionPolicy added in v0.20240920.1135249

type LongTermSchedulePolicy

type LongTermSchedulePolicy struct {
	SchedulePolicyType string `json:"schedulePolicyType"`
}

func (LongTermSchedulePolicy) MarshalJSON

func (s LongTermSchedulePolicy) MarshalJSON() ([]byte, error)

func (LongTermSchedulePolicy) SchedulePolicy added in v0.20240920.1135249

type MabProtectionPolicy

type MabProtectionPolicy struct {
	RetentionPolicy RetentionPolicy `json:"retentionPolicy"`
	SchedulePolicy  SchedulePolicy  `json:"schedulePolicy"`

	BackupManagementType           string    `json:"backupManagementType"`
	ProtectedItemsCount            *int64    `json:"protectedItemsCount,omitempty"`
	ResourceGuardOperationRequests *[]string `json:"resourceGuardOperationRequests,omitempty"`
}

func (MabProtectionPolicy) MarshalJSON

func (s MabProtectionPolicy) MarshalJSON() ([]byte, error)

func (MabProtectionPolicy) ProtectionPolicy added in v0.20240920.1135249

func (s MabProtectionPolicy) ProtectionPolicy() BaseProtectionPolicyImpl

func (*MabProtectionPolicy) UnmarshalJSON

func (s *MabProtectionPolicy) UnmarshalJSON(bytes []byte) error

type MonthOfYear

type MonthOfYear string
const (
	MonthOfYearApril     MonthOfYear = "April"
	MonthOfYearAugust    MonthOfYear = "August"
	MonthOfYearDecember  MonthOfYear = "December"
	MonthOfYearFebruary  MonthOfYear = "February"
	MonthOfYearInvalid   MonthOfYear = "Invalid"
	MonthOfYearJanuary   MonthOfYear = "January"
	MonthOfYearJuly      MonthOfYear = "July"
	MonthOfYearJune      MonthOfYear = "June"
	MonthOfYearMarch     MonthOfYear = "March"
	MonthOfYearMay       MonthOfYear = "May"
	MonthOfYearNovember  MonthOfYear = "November"
	MonthOfYearOctober   MonthOfYear = "October"
	MonthOfYearSeptember MonthOfYear = "September"
)

type MonthlyRetentionSchedule

type MonthlyRetentionSchedule struct {
	RetentionDuration           *RetentionDuration       `json:"retentionDuration,omitempty"`
	RetentionScheduleDaily      *DailyRetentionFormat    `json:"retentionScheduleDaily,omitempty"`
	RetentionScheduleFormatType *RetentionScheduleFormat `json:"retentionScheduleFormatType,omitempty"`
	RetentionScheduleWeekly     *WeeklyRetentionFormat   `json:"retentionScheduleWeekly,omitempty"`
	RetentionTimes              *[]string                `json:"retentionTimes,omitempty"`
}

type PolicyType

type PolicyType string
const (
	PolicyTypeCopyOnlyFull         PolicyType = "CopyOnlyFull"
	PolicyTypeDifferential         PolicyType = "Differential"
	PolicyTypeFull                 PolicyType = "Full"
	PolicyTypeIncremental          PolicyType = "Incremental"
	PolicyTypeInvalid              PolicyType = "Invalid"
	PolicyTypeLog                  PolicyType = "Log"
	PolicyTypeSnapshotCopyOnlyFull PolicyType = "SnapshotCopyOnlyFull"
	PolicyTypeSnapshotFull         PolicyType = "SnapshotFull"
)

type ProtectionPolicy

type ProtectionPolicy interface {
	ProtectionPolicy() BaseProtectionPolicyImpl
}

func UnmarshalProtectionPolicyImplementation added in v0.20240920.1135249

func UnmarshalProtectionPolicyImplementation(input []byte) (ProtectionPolicy, error)

type ProtectionPolicyResource

type ProtectionPolicyResource struct {
	ETag       *string            `json:"eTag,omitempty"`
	Id         *string            `json:"id,omitempty"`
	Location   *string            `json:"location,omitempty"`
	Name       *string            `json:"name,omitempty"`
	Properties ProtectionPolicy   `json:"properties"`
	Tags       *map[string]string `json:"tags,omitempty"`
	Type       *string            `json:"type,omitempty"`
}

func (*ProtectionPolicyResource) UnmarshalJSON

func (s *ProtectionPolicyResource) UnmarshalJSON(bytes []byte) error

type ProtectionPolicyResourceOperationPredicate

type ProtectionPolicyResourceOperationPredicate struct {
	ETag     *string
	Id       *string
	Location *string
	Name     *string
	Type     *string
}

func (ProtectionPolicyResourceOperationPredicate) Matches

type RawProtectionPolicyImpl

type RawProtectionPolicyImpl struct {
	Type   string
	Values map[string]interface{}
	// contains filtered or unexported fields
}

RawProtectionPolicyImpl is returned when the Discriminated Value doesn't match any of the defined types NOTE: this should only be used when a type isn't defined for this type of Object (as a workaround) and is used only for Deserialization (e.g. this cannot be used as a Request Payload).

func (RawProtectionPolicyImpl) ProtectionPolicy added in v0.20240920.1135249

type RawRetentionPolicyImpl

type RawRetentionPolicyImpl struct {
	Type   string
	Values map[string]interface{}
	// contains filtered or unexported fields
}

RawRetentionPolicyImpl is returned when the Discriminated Value doesn't match any of the defined types NOTE: this should only be used when a type isn't defined for this type of Object (as a workaround) and is used only for Deserialization (e.g. this cannot be used as a Request Payload).

func (RawRetentionPolicyImpl) RetentionPolicy added in v0.20240920.1135249

func (s RawRetentionPolicyImpl) RetentionPolicy() BaseRetentionPolicyImpl

type RawSchedulePolicyImpl

type RawSchedulePolicyImpl struct {
	Type   string
	Values map[string]interface{}
	// contains filtered or unexported fields
}

RawSchedulePolicyImpl is returned when the Discriminated Value doesn't match any of the defined types NOTE: this should only be used when a type isn't defined for this type of Object (as a workaround) and is used only for Deserialization (e.g. this cannot be used as a Request Payload).

func (RawSchedulePolicyImpl) SchedulePolicy added in v0.20240920.1135249

func (s RawSchedulePolicyImpl) SchedulePolicy() BaseSchedulePolicyImpl

type RetentionDuration

type RetentionDuration struct {
	Count        *int64                 `json:"count,omitempty"`
	DurationType *RetentionDurationType `json:"durationType,omitempty"`
}

type RetentionDurationType

type RetentionDurationType string
const (
	RetentionDurationTypeDays    RetentionDurationType = "Days"
	RetentionDurationTypeInvalid RetentionDurationType = "Invalid"
	RetentionDurationTypeMonths  RetentionDurationType = "Months"
	RetentionDurationTypeWeeks   RetentionDurationType = "Weeks"
	RetentionDurationTypeYears   RetentionDurationType = "Years"
)

type RetentionPolicy

type RetentionPolicy interface {
	RetentionPolicy() BaseRetentionPolicyImpl
}

func UnmarshalRetentionPolicyImplementation added in v0.20240920.1135249

func UnmarshalRetentionPolicyImplementation(input []byte) (RetentionPolicy, error)

type RetentionScheduleFormat

type RetentionScheduleFormat string
const (
	RetentionScheduleFormatDaily   RetentionScheduleFormat = "Daily"
	RetentionScheduleFormatInvalid RetentionScheduleFormat = "Invalid"
	RetentionScheduleFormatWeekly  RetentionScheduleFormat = "Weekly"
)

type SchedulePolicy

type SchedulePolicy interface {
	SchedulePolicy() BaseSchedulePolicyImpl
}

func UnmarshalSchedulePolicyImplementation added in v0.20240920.1135249

func UnmarshalSchedulePolicyImplementation(input []byte) (SchedulePolicy, error)

type ScheduleRunType

type ScheduleRunType string
const (
	ScheduleRunTypeDaily   ScheduleRunType = "Daily"
	ScheduleRunTypeHourly  ScheduleRunType = "Hourly"
	ScheduleRunTypeInvalid ScheduleRunType = "Invalid"
	ScheduleRunTypeWeekly  ScheduleRunType = "Weekly"
)

type Settings

type Settings struct {
	IsCompression    *bool   `json:"isCompression,omitempty"`
	Issqlcompression *bool   `json:"issqlcompression,omitempty"`
	TimeZone         *string `json:"timeZone,omitempty"`
}

type SimpleRetentionPolicy

type SimpleRetentionPolicy struct {
	RetentionDuration *RetentionDuration `json:"retentionDuration,omitempty"`

	RetentionPolicyType string `json:"retentionPolicyType"`
}

func (SimpleRetentionPolicy) MarshalJSON

func (s SimpleRetentionPolicy) MarshalJSON() ([]byte, error)

func (SimpleRetentionPolicy) RetentionPolicy added in v0.20240920.1135249

func (s SimpleRetentionPolicy) RetentionPolicy() BaseRetentionPolicyImpl

type SimpleSchedulePolicy

type SimpleSchedulePolicy struct {
	HourlySchedule          *HourlySchedule  `json:"hourlySchedule,omitempty"`
	ScheduleRunDays         *[]DayOfWeek     `json:"scheduleRunDays,omitempty"`
	ScheduleRunFrequency    *ScheduleRunType `json:"scheduleRunFrequency,omitempty"`
	ScheduleRunTimes        *[]string        `json:"scheduleRunTimes,omitempty"`
	ScheduleWeeklyFrequency *int64           `json:"scheduleWeeklyFrequency,omitempty"`

	SchedulePolicyType string `json:"schedulePolicyType"`
}

func (SimpleSchedulePolicy) MarshalJSON

func (s SimpleSchedulePolicy) MarshalJSON() ([]byte, error)

func (SimpleSchedulePolicy) SchedulePolicy added in v0.20240920.1135249

func (s SimpleSchedulePolicy) SchedulePolicy() BaseSchedulePolicyImpl

type SimpleSchedulePolicyV2

type SimpleSchedulePolicyV2 struct {
	DailySchedule        *DailySchedule   `json:"dailySchedule,omitempty"`
	HourlySchedule       *HourlySchedule  `json:"hourlySchedule,omitempty"`
	ScheduleRunFrequency *ScheduleRunType `json:"scheduleRunFrequency,omitempty"`
	WeeklySchedule       *WeeklySchedule  `json:"weeklySchedule,omitempty"`

	SchedulePolicyType string `json:"schedulePolicyType"`
}

func (SimpleSchedulePolicyV2) MarshalJSON

func (s SimpleSchedulePolicyV2) MarshalJSON() ([]byte, error)

func (SimpleSchedulePolicyV2) SchedulePolicy added in v0.20240920.1135249

type SnapshotBackupAdditionalDetails

type SnapshotBackupAdditionalDetails struct {
	InstantRPDetails                   *string                             `json:"instantRPDetails,omitempty"`
	InstantRpRetentionRangeInDays      *int64                              `json:"instantRpRetentionRangeInDays,omitempty"`
	UserAssignedManagedIdentityDetails *UserAssignedManagedIdentityDetails `json:"userAssignedManagedIdentityDetails,omitempty"`
}

type SubProtectionPolicy

type SubProtectionPolicy struct {
	PolicyType                      *PolicyType                      `json:"policyType,omitempty"`
	RetentionPolicy                 RetentionPolicy                  `json:"retentionPolicy"`
	SchedulePolicy                  SchedulePolicy                   `json:"schedulePolicy"`
	SnapshotBackupAdditionalDetails *SnapshotBackupAdditionalDetails `json:"snapshotBackupAdditionalDetails,omitempty"`
	TieringPolicy                   *map[string]TieringPolicy        `json:"tieringPolicy,omitempty"`
}

func (*SubProtectionPolicy) UnmarshalJSON

func (s *SubProtectionPolicy) UnmarshalJSON(bytes []byte) error

type TieringMode

type TieringMode string
const (
	TieringModeDoNotTier       TieringMode = "DoNotTier"
	TieringModeInvalid         TieringMode = "Invalid"
	TieringModeTierAfter       TieringMode = "TierAfter"
	TieringModeTierRecommended TieringMode = "TierRecommended"
)

type TieringPolicy

type TieringPolicy struct {
	Duration     *int64                 `json:"duration,omitempty"`
	DurationType *RetentionDurationType `json:"durationType,omitempty"`
	TieringMode  *TieringMode           `json:"tieringMode,omitempty"`
}

type UserAssignedIdentityProperties

type UserAssignedIdentityProperties struct {
	ClientId    *string `json:"clientId,omitempty"`
	PrincipalId *string `json:"principalId,omitempty"`
}

type UserAssignedManagedIdentityDetails

type UserAssignedManagedIdentityDetails struct {
	IdentityArmId                  *string                         `json:"identityArmId,omitempty"`
	IdentityName                   *string                         `json:"identityName,omitempty"`
	UserAssignedIdentityProperties *UserAssignedIdentityProperties `json:"userAssignedIdentityProperties,omitempty"`
}

type VaultId

type VaultId struct {
	SubscriptionId    string
	ResourceGroupName string
	VaultName         string
}

VaultId is a struct representing the Resource ID for a Vault

func NewVaultID

func NewVaultID(subscriptionId string, resourceGroupName string, vaultName string) VaultId

NewVaultID returns a new VaultId struct

func ParseVaultID

func ParseVaultID(input string) (*VaultId, error)

ParseVaultID parses 'input' into a VaultId

func ParseVaultIDInsensitively

func ParseVaultIDInsensitively(input string) (*VaultId, error)

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

func (*VaultId) FromParseResult

func (id *VaultId) FromParseResult(input resourceids.ParseResult) error

func (VaultId) ID

func (id VaultId) ID() string

ID returns the formatted Vault ID

func (VaultId) Segments

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

Segments returns a slice of Resource ID Segments which comprise this Vault ID

func (VaultId) String

func (id VaultId) String() string

String returns a human-readable description of this Vault ID

type VaultRetentionPolicy

type VaultRetentionPolicy struct {
	SnapshotRetentionInDays int64           `json:"snapshotRetentionInDays"`
	VaultRetention          RetentionPolicy `json:"vaultRetention"`
}

func (*VaultRetentionPolicy) UnmarshalJSON

func (s *VaultRetentionPolicy) UnmarshalJSON(bytes []byte) error

type WeekOfMonth

type WeekOfMonth string
const (
	WeekOfMonthFirst   WeekOfMonth = "First"
	WeekOfMonthFourth  WeekOfMonth = "Fourth"
	WeekOfMonthInvalid WeekOfMonth = "Invalid"
	WeekOfMonthLast    WeekOfMonth = "Last"
	WeekOfMonthSecond  WeekOfMonth = "Second"
	WeekOfMonthThird   WeekOfMonth = "Third"
)

type WeeklyRetentionFormat

type WeeklyRetentionFormat struct {
	DaysOfTheWeek   *[]DayOfWeek   `json:"daysOfTheWeek,omitempty"`
	WeeksOfTheMonth *[]WeekOfMonth `json:"weeksOfTheMonth,omitempty"`
}

type WeeklyRetentionSchedule

type WeeklyRetentionSchedule struct {
	DaysOfTheWeek     *[]DayOfWeek       `json:"daysOfTheWeek,omitempty"`
	RetentionDuration *RetentionDuration `json:"retentionDuration,omitempty"`
	RetentionTimes    *[]string          `json:"retentionTimes,omitempty"`
}

type WeeklySchedule

type WeeklySchedule struct {
	ScheduleRunDays  *[]DayOfWeek `json:"scheduleRunDays,omitempty"`
	ScheduleRunTimes *[]string    `json:"scheduleRunTimes,omitempty"`
}

type WorkloadType

type WorkloadType string
const (
	WorkloadTypeAzureFileShare    WorkloadType = "AzureFileShare"
	WorkloadTypeAzureSqlDb        WorkloadType = "AzureSqlDb"
	WorkloadTypeClient            WorkloadType = "Client"
	WorkloadTypeExchange          WorkloadType = "Exchange"
	WorkloadTypeFileFolder        WorkloadType = "FileFolder"
	WorkloadTypeGenericDataSource WorkloadType = "GenericDataSource"
	WorkloadTypeInvalid           WorkloadType = "Invalid"
	WorkloadTypeSAPAseDatabase    WorkloadType = "SAPAseDatabase"
	WorkloadTypeSAPHanaDBInstance WorkloadType = "SAPHanaDBInstance"
	WorkloadTypeSAPHanaDatabase   WorkloadType = "SAPHanaDatabase"
	WorkloadTypeSQLDB             WorkloadType = "SQLDB"
	WorkloadTypeSQLDataBase       WorkloadType = "SQLDataBase"
	WorkloadTypeSharepoint        WorkloadType = "Sharepoint"
	WorkloadTypeSystemState       WorkloadType = "SystemState"
	WorkloadTypeVM                WorkloadType = "VM"
	WorkloadTypeVMwareVM          WorkloadType = "VMwareVM"
)

type YearlyRetentionSchedule

type YearlyRetentionSchedule struct {
	MonthsOfYear                *[]MonthOfYear           `json:"monthsOfYear,omitempty"`
	RetentionDuration           *RetentionDuration       `json:"retentionDuration,omitempty"`
	RetentionScheduleDaily      *DailyRetentionFormat    `json:"retentionScheduleDaily,omitempty"`
	RetentionScheduleFormatType *RetentionScheduleFormat `json:"retentionScheduleFormatType,omitempty"`
	RetentionScheduleWeekly     *WeeklyRetentionFormat   `json:"retentionScheduleWeekly,omitempty"`
	RetentionTimes              *[]string                `json:"retentionTimes,omitempty"`
}

Jump to

Keyboard shortcuts

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