Class: Google::Apis::BackupdrV1::BackupPlan

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/backupdr_v1/classes.rb,
lib/google/apis/backupdr_v1/representations.rb,
lib/google/apis/backupdr_v1/representations.rb

Overview

A BackupPlan specifies some common fields, such as description as well as one or more BackupRule messages. Each BackupRule has a retention policy and defines a schedule by which the system is to perform backup workloads.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ BackupPlan

Returns a new instance of BackupPlan.



894
895
896
# File 'lib/google/apis/backupdr_v1/classes.rb', line 894

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#backup_rulesArray<Google::Apis::BackupdrV1::BackupRule>

Required. The backup rules for this BackupPlan. There must be at least one BackupRule message. Corresponds to the JSON property backupRules



828
829
830
# File 'lib/google/apis/backupdr_v1/classes.rb', line 828

def backup_rules
  @backup_rules
end

#backup_vaultString

Required. Resource name of backup vault which will be used as storage location for backups. Format: projects/project/locations/location/backupVaults/ backupvault Corresponds to the JSON property backupVault

Returns:

  • (String)


835
836
837
# File 'lib/google/apis/backupdr_v1/classes.rb', line 835

def backup_vault
  @backup_vault
end

#backup_vault_service_accountString

Output only. The Google Cloud Platform Service Account to be used by the BackupVault for taking backups. Specify the email address of the Backup Vault Service Account. Corresponds to the JSON property backupVaultServiceAccount

Returns:

  • (String)


842
843
844
# File 'lib/google/apis/backupdr_v1/classes.rb', line 842

def 
  @backup_vault_service_account
end

#create_timeString

Output only. When the BackupPlan was created. Corresponds to the JSON property createTime

Returns:

  • (String)


847
848
849
# File 'lib/google/apis/backupdr_v1/classes.rb', line 847

def create_time
  @create_time
end

#descriptionString

Optional. The description of the BackupPlan resource. The description allows for additional details about BackupPlan and its use cases to be provided. An example description is the following: "This is a backup plan that performs a daily backup at 6pm and retains data for 3 months". The description must be at most 2048 characters. Corresponds to the JSON property description

Returns:

  • (String)


856
857
858
# File 'lib/google/apis/backupdr_v1/classes.rb', line 856

def description
  @description
end

#etagString

Optional. etag is returned from the service in the response. As a user of the service, you may provide an etag value in this field to prevent stale resources. Corresponds to the JSON property etag

Returns:

  • (String)


863
864
865
# File 'lib/google/apis/backupdr_v1/classes.rb', line 863

def etag
  @etag
end

#labelsHash<String,String>

Optional. This collection of key/value pairs allows for custom labels to be supplied by the user. Example, "tag": "Weekly". Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


869
870
871
# File 'lib/google/apis/backupdr_v1/classes.rb', line 869

def labels
  @labels
end

#nameString

Output only. Identifier. The resource name of the BackupPlan. Format: projects/project/locations/location/backupPlans/backup_plan` Corresponds to the JSON propertyname`

Returns:

  • (String)


875
876
877
# File 'lib/google/apis/backupdr_v1/classes.rb', line 875

def name
  @name
end

#resource_typeString

Required. The resource type to which the BackupPlan will be applied. Examples include, "compute.googleapis.com/Instance", "sqladmin.googleapis.com/ Instance", or "alloydb.googleapis.com/Cluster". Corresponds to the JSON property resourceType

Returns:

  • (String)


882
883
884
# File 'lib/google/apis/backupdr_v1/classes.rb', line 882

def resource_type
  @resource_type
end

#stateString

Output only. The State for the BackupPlan. Corresponds to the JSON property state

Returns:

  • (String)


887
888
889
# File 'lib/google/apis/backupdr_v1/classes.rb', line 887

def state
  @state
end

#update_timeString

Output only. When the BackupPlan was last updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


892
893
894
# File 'lib/google/apis/backupdr_v1/classes.rb', line 892

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



899
900
901
902
903
904
905
906
907
908
909
910
911
# File 'lib/google/apis/backupdr_v1/classes.rb', line 899

def update!(**args)
  @backup_rules = args[:backup_rules] if args.key?(:backup_rules)
  @backup_vault = args[:backup_vault] if args.key?(:backup_vault)
  @backup_vault_service_account = args[:backup_vault_service_account] if args.key?(:backup_vault_service_account)
  @create_time = args[:create_time] if args.key?(:create_time)
  @description = args[:description] if args.key?(:description)
  @etag = args[:etag] if args.key?(:etag)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @resource_type = args[:resource_type] if args.key?(:resource_type)
  @state = args[:state] if args.key?(:state)
  @update_time = args[:update_time] if args.key?(:update_time)
end