backuppolicies

package
v0.20230406.1222242 Latest Latest
Warning

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

Go to latest
Published: Apr 6, 2023 License: MPL-2.0 Imports: 11 Imported by: 0

README

github.com/hashicorp/go-azure-sdk/resource-manager/recoveryservicesbackup/2022-10-01/backuppolicies Documentation

The backuppolicies SDK allows for interaction with the Azure Resource Manager Service recoveryservicesbackup (API Version 2022-10-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/2022-10-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", "vaultValue")

// 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"`
	WorkLoadType    *WorkloadType   `json:"workLoadType,omitempty"`

	// Fields inherited from ProtectionPolicy
	ProtectedItemsCount            *int64    `json:"protectedItemsCount,omitempty"`
	ResourceGuardOperationRequests *[]string `json:"resourceGuardOperationRequests,omitempty"`
}

func (AzureFileShareProtectionPolicy) MarshalJSON

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

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"`

	// Fields inherited from ProtectionPolicy
	ProtectedItemsCount            *int64    `json:"protectedItemsCount,omitempty"`
	ResourceGuardOperationRequests *[]string `json:"resourceGuardOperationRequests,omitempty"`
}

func (AzureIaaSVMProtectionPolicy) MarshalJSON

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

func (*AzureIaaSVMProtectionPolicy) UnmarshalJSON

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

type AzureSqlProtectionPolicy

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

	// Fields inherited from ProtectionPolicy
	ProtectedItemsCount            *int64    `json:"protectedItemsCount,omitempty"`
	ResourceGuardOperationRequests *[]string `json:"resourceGuardOperationRequests,omitempty"`
}

func (AzureSqlProtectionPolicy) MarshalJSON

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

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"`

	// Fields inherited from ProtectionPolicy
	ProtectedItemsCount            *int64    `json:"protectedItemsCount,omitempty"`
	ResourceGuardOperationRequests *[]string `json:"resourceGuardOperationRequests,omitempty"`
}

func (AzureVMWorkloadProtectionPolicy) MarshalJSON

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

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 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"`

	// Fields inherited from ProtectionPolicy
	ProtectedItemsCount            *int64    `json:"protectedItemsCount,omitempty"`
	ResourceGuardOperationRequests *[]string `json:"resourceGuardOperationRequests,omitempty"`
}

func (GenericProtectionPolicy) MarshalJSON

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

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"`
}

func (LogSchedulePolicy) MarshalJSON

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

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"`
}

func (LongTermRetentionPolicy) MarshalJSON

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

type LongTermSchedulePolicy

type LongTermSchedulePolicy struct {
}

func (LongTermSchedulePolicy) MarshalJSON

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

type MabProtectionPolicy

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

	// Fields inherited from ProtectionPolicy
	ProtectedItemsCount            *int64    `json:"protectedItemsCount,omitempty"`
	ResourceGuardOperationRequests *[]string `json:"resourceGuardOperationRequests,omitempty"`
}

func (MabProtectionPolicy) MarshalJSON

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

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 {
}

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 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 {
}

type RetentionScheduleFormat

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

type SchedulePolicy

type SchedulePolicy interface {
}

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"`
}

func (SimpleRetentionPolicy) MarshalJSON

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

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"`
}

func (SimpleSchedulePolicy) MarshalJSON

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

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"`
}

func (SimpleSchedulePolicyV2) MarshalJSON

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

type SubProtectionPolicy

type SubProtectionPolicy struct {
	PolicyType      *PolicyType               `json:"policyType,omitempty"`
	RetentionPolicy RetentionPolicy           `json:"retentionPolicy"`
	SchedulePolicy  SchedulePolicy            `json:"schedulePolicy"`
	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 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) 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 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