Class: Google::Apis::FileV1beta1::Instance

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/file_v1beta1/classes.rb,
lib/google/apis/file_v1beta1/representations.rb,
lib/google/apis/file_v1beta1/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.



900
901
902
# File 'lib/google/apis/file_v1beta1/classes.rb', line 900

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

Instance Attribute Details

#capacity_gbFixnum

The storage capacity of the instance in gigabytes (GB = 1024^3 bytes). This capacity can be increased up to max_capacity_gb GB in multipliers of capacity_step_size_gb GB. Corresponds to the JSON property capacityGb

Returns:

  • (Fixnum)


781
782
783
# File 'lib/google/apis/file_v1beta1/classes.rb', line 781

def capacity_gb
  @capacity_gb
end

#capacity_step_size_gbFixnum

Output only. The increase/decrease capacity step size. Corresponds to the JSON property capacityStepSizeGb

Returns:

  • (Fixnum)


786
787
788
# File 'lib/google/apis/file_v1beta1/classes.rb', line 786

def capacity_step_size_gb
  @capacity_step_size_gb
end

#create_timeString

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

Returns:

  • (String)


791
792
793
# File 'lib/google/apis/file_v1beta1/classes.rb', line 791

def create_time
  @create_time
end

#descriptionString

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

Returns:

  • (String)


796
797
798
# File 'lib/google/apis/file_v1beta1/classes.rb', line 796

def description
  @description
end

#directory_servicesGoogle::Apis::FileV1beta1::DirectoryServicesConfig

Directory Services configuration for Kerberos-based authentication. Corresponds to the JSON property directoryServices



801
802
803
# File 'lib/google/apis/file_v1beta1/classes.rb', line 801

def directory_services
  @directory_services
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)


807
808
809
# File 'lib/google/apis/file_v1beta1/classes.rb', line 807

def etag
  @etag
end

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

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



813
814
815
# File 'lib/google/apis/file_v1beta1/classes.rb', line 813

def file_shares
  @file_shares
end

#kms_key_nameString

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

Returns:

  • (String)


818
819
820
# File 'lib/google/apis/file_v1beta1/classes.rb', line 818

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>)


823
824
825
# File 'lib/google/apis/file_v1beta1/classes.rb', line 823

def labels
  @labels
end

#max_capacity_gbFixnum

Output only. The max capacity of the instance. Corresponds to the JSON property maxCapacityGb

Returns:

  • (Fixnum)


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

def max_capacity_gb
  @max_capacity_gb
end

#max_share_countFixnum

The max number of shares allowed. Corresponds to the JSON property maxShareCount

Returns:

  • (Fixnum)


833
834
835
# File 'lib/google/apis/file_v1beta1/classes.rb', line 833

def max_share_count
  @max_share_count
end

#multi_share_enabledBoolean Also known as: multi_share_enabled?

Indicates whether this instance uses a multi-share configuration with which it can have more than one file-share or none at all. File-shares are added, updated and removed through the separate file-share APIs. Corresponds to the JSON property multiShareEnabled

Returns:

  • (Boolean)


840
841
842
# File 'lib/google/apis/file_v1beta1/classes.rb', line 840

def multi_share_enabled
  @multi_share_enabled
end

#nameString

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

Returns:

  • (String)


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

def name
  @name
end

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

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



853
854
855
# File 'lib/google/apis/file_v1beta1/classes.rb', line 853

def networks
  @networks
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)


860
861
862
# File 'lib/google/apis/file_v1beta1/classes.rb', line 860

def protocol
  @protocol
end

#replicationGoogle::Apis::FileV1beta1::Replication

Replication specifications. Corresponds to the JSON property replication



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

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)


870
871
872
# File 'lib/google/apis/file_v1beta1/classes.rb', line 870

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)


876
877
878
# File 'lib/google/apis/file_v1beta1/classes.rb', line 876

def satisfies_pzs
  @satisfies_pzs
end

#stateString

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

Returns:

  • (String)


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

def state
  @state
end

#status_messageString

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

Returns:

  • (String)


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

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>)


893
894
895
# File 'lib/google/apis/file_v1beta1/classes.rb', line 893

def suspension_reasons
  @suspension_reasons
end

#tierString

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

Returns:

  • (String)


898
899
900
# File 'lib/google/apis/file_v1beta1/classes.rb', line 898

def tier
  @tier
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
# File 'lib/google/apis/file_v1beta1/classes.rb', line 905

def update!(**args)
  @capacity_gb = args[:capacity_gb] if args.key?(:capacity_gb)
  @capacity_step_size_gb = args[:capacity_step_size_gb] if args.key?(:capacity_step_size_gb)
  @create_time = args[:create_time] if args.key?(:create_time)
  @description = args[:description] if args.key?(:description)
  @directory_services = args[:directory_services] if args.key?(:directory_services)
  @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)
  @max_capacity_gb = args[:max_capacity_gb] if args.key?(:max_capacity_gb)
  @max_share_count = args[:max_share_count] if args.key?(:max_share_count)
  @multi_share_enabled = args[:multi_share_enabled] if args.key?(:multi_share_enabled)
  @name = args[:name] if args.key?(:name)
  @networks = args[:networks] if args.key?(:networks)
  @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)
  @tier = args[:tier] if args.key?(:tier)
end