Class: Google::Apis::FileV1::Instance

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

Overview

A Filestore instance.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Instance

Returns a new instance of Instance.



941
942
943
# File 'lib/google/apis/file_v1/classes.rb', line 941

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

Instance Attribute Details

#configurable_performance_enabledBoolean Also known as: configurable_performance_enabled?

Output only. Indicates whether this instance's performance is configurable. If enabled, adjust it using the 'performance_config' field. Corresponds to the JSON property configurablePerformanceEnabled

Returns:

  • (Boolean)


815
816
817
# File 'lib/google/apis/file_v1/classes.rb', line 815

def configurable_performance_enabled
  @configurable_performance_enabled
end

#create_timeString

Output only. The time when the instance was created. Corresponds to the JSON property createTime

Returns:

  • (String)


821
822
823
# File 'lib/google/apis/file_v1/classes.rb', line 821

def create_time
  @create_time
end

#deletion_protection_enabledBoolean Also known as: deletion_protection_enabled?

Optional. Indicates whether the instance is protected against deletion. Corresponds to the JSON property deletionProtectionEnabled

Returns:

  • (Boolean)


826
827
828
# File 'lib/google/apis/file_v1/classes.rb', line 826

def deletion_protection_enabled
  @deletion_protection_enabled
end

#deletion_protection_reasonString

Optional. The reason for enabling deletion protection. Corresponds to the JSON property deletionProtectionReason

Returns:

  • (String)


832
833
834
# File 'lib/google/apis/file_v1/classes.rb', line 832

def deletion_protection_reason
  @deletion_protection_reason
end

#descriptionString

The description of the instance (2048 characters or less). Corresponds to the JSON property description

Returns:

  • (String)


837
838
839
# File 'lib/google/apis/file_v1/classes.rb', line 837

def description
  @description
end

#etagString

Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other. Corresponds to the JSON property etag

Returns:

  • (String)


843
844
845
# File 'lib/google/apis/file_v1/classes.rb', line 843

def etag
  @etag
end

#file_sharesArray<Google::Apis::FileV1::FileShareConfig>

File system shares on the instance. For this version, only a single file share is supported. Corresponds to the JSON property fileShares



849
850
851
# File 'lib/google/apis/file_v1/classes.rb', line 849

def file_shares
  @file_shares
end

#kms_key_nameString

KMS key name used for data encryption. Corresponds to the JSON property kmsKeyName

Returns:

  • (String)


854
855
856
# File 'lib/google/apis/file_v1/classes.rb', line 854

def kms_key_name
  @kms_key_name
end

#labelsHash<String,String>

Resource labels to represent user provided metadata. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


859
860
861
# File 'lib/google/apis/file_v1/classes.rb', line 859

def labels
  @labels
end

#nameString

Output only. The resource name of the instance, in the format projects/ project/locations/location/instances/instance`. Corresponds to the JSON propertyname`

Returns:

  • (String)


865
866
867
# File 'lib/google/apis/file_v1/classes.rb', line 865

def name
  @name
end

#networksArray<Google::Apis::FileV1::NetworkConfig>

VPC networks to which the instance is connected. For this version, only a single network is supported. Corresponds to the JSON property networks



871
872
873
# File 'lib/google/apis/file_v1/classes.rb', line 871

def networks
  @networks
end

#performance_configGoogle::Apis::FileV1::PerformanceConfig

Used for setting the performance configuration. If the user doesn't specify PerformanceConfig, automatically provision the default performance settings as described in https://cloud.google.com/filestore/docs/performance. Larger instances will be linearly set to more IOPS. If the instance's capacity is increased or decreased, its performance will be automatically adjusted upwards or downwards accordingly (respectively). Corresponds to the JSON property performanceConfig



881
882
883
# File 'lib/google/apis/file_v1/classes.rb', line 881

def performance_config
  @performance_config
end

#performance_limitsGoogle::Apis::FileV1::PerformanceLimits

The enforced performance limits, calculated from the instance's performance configuration. Corresponds to the JSON property performanceLimits



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

def performance_limits
  @performance_limits
end

#protocolString

Immutable. The protocol indicates the access protocol for all shares in the instance. This field is immutable and it cannot be changed after the instance has been created. Default value: NFS_V3. Corresponds to the JSON property protocol

Returns:

  • (String)


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

def protocol
  @protocol
end

#replicationGoogle::Apis::FileV1::Replication

Replication specifications. Corresponds to the JSON property replication



899
900
901
# File 'lib/google/apis/file_v1/classes.rb', line 899

def replication
  @replication
end

#satisfies_pziBoolean Also known as: satisfies_pzi?

Output only. Reserved for future use. Corresponds to the JSON property satisfiesPzi

Returns:

  • (Boolean)


904
905
906
# File 'lib/google/apis/file_v1/classes.rb', line 904

def satisfies_pzi
  @satisfies_pzi
end

#satisfies_pzsBoolean Also known as: satisfies_pzs?

Output only. Reserved for future use. Corresponds to the JSON property satisfiesPzs

Returns:

  • (Boolean)


910
911
912
# File 'lib/google/apis/file_v1/classes.rb', line 910

def satisfies_pzs
  @satisfies_pzs
end

#stateString

Output only. The instance state. Corresponds to the JSON property state

Returns:

  • (String)


916
917
918
# File 'lib/google/apis/file_v1/classes.rb', line 916

def state
  @state
end

#status_messageString

Output only. Additional information about the instance state, if available. Corresponds to the JSON property statusMessage

Returns:

  • (String)


921
922
923
# File 'lib/google/apis/file_v1/classes.rb', line 921

def status_message
  @status_message
end

#suspension_reasonsArray<String>

Output only. Field indicates all the reasons the instance is in "SUSPENDED" state. Corresponds to the JSON property suspensionReasons

Returns:

  • (Array<String>)


927
928
929
# File 'lib/google/apis/file_v1/classes.rb', line 927

def suspension_reasons
  @suspension_reasons
end

#tagsHash<String,String>

Optional. Input only. Immutable. Tag key-value pairs are bound to this resource. For example: "123/environment": "production", "123/costCenter": " marketing" Corresponds to the JSON property tags

Returns:

  • (Hash<String,String>)


934
935
936
# File 'lib/google/apis/file_v1/classes.rb', line 934

def tags
  @tags
end

#tierString

The service tier of the instance. Corresponds to the JSON property tier

Returns:

  • (String)


939
940
941
# File 'lib/google/apis/file_v1/classes.rb', line 939

def tier
  @tier
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
# File 'lib/google/apis/file_v1/classes.rb', line 946

def update!(**args)
  @configurable_performance_enabled = args[:configurable_performance_enabled] if args.key?(:configurable_performance_enabled)
  @create_time = args[:create_time] if args.key?(:create_time)
  @deletion_protection_enabled = args[:deletion_protection_enabled] if args.key?(:deletion_protection_enabled)
  @deletion_protection_reason = args[:deletion_protection_reason] if args.key?(:deletion_protection_reason)
  @description = args[:description] if args.key?(:description)
  @etag = args[:etag] if args.key?(:etag)
  @file_shares = args[:file_shares] if args.key?(:file_shares)
  @kms_key_name = args[:kms_key_name] if args.key?(:kms_key_name)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @networks = args[:networks] if args.key?(:networks)
  @performance_config = args[:performance_config] if args.key?(:performance_config)
  @performance_limits = args[:performance_limits] if args.key?(:performance_limits)
  @protocol = args[:protocol] if args.key?(:protocol)
  @replication = args[:replication] if args.key?(:replication)
  @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
  @state = args[:state] if args.key?(:state)
  @status_message = args[:status_message] if args.key?(:status_message)
  @suspension_reasons = args[:suspension_reasons] if args.key?(:suspension_reasons)
  @tags = args[:tags] if args.key?(:tags)
  @tier = args[:tier] if args.key?(:tier)
end