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.



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

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)


774
775
776
# File 'lib/google/apis/file_v1beta1/classes.rb', line 774

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)


779
780
781
# File 'lib/google/apis/file_v1beta1/classes.rb', line 779

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)


784
785
786
# File 'lib/google/apis/file_v1beta1/classes.rb', line 784

def create_time
  @create_time
end

#descriptionString

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

Returns:

  • (String)


789
790
791
# File 'lib/google/apis/file_v1beta1/classes.rb', line 789

def description
  @description
end

#directory_servicesGoogle::Apis::FileV1beta1::DirectoryServicesConfig

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



794
795
796
# File 'lib/google/apis/file_v1beta1/classes.rb', line 794

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)


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

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



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

def file_shares
  @file_shares
end

#kms_key_nameString

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

Returns:

  • (String)


811
812
813
# File 'lib/google/apis/file_v1beta1/classes.rb', line 811

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


816
817
818
# File 'lib/google/apis/file_v1beta1/classes.rb', line 816

def labels
  @labels
end

#max_capacity_gbFixnum

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

Returns:

  • (Fixnum)


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

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)


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

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)


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

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)


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

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



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

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)


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

def protocol
  @protocol
end

#satisfies_pzsBoolean Also known as: satisfies_pzs?

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

Returns:

  • (Boolean)


858
859
860
# File 'lib/google/apis/file_v1beta1/classes.rb', line 858

def satisfies_pzs
  @satisfies_pzs
end

#stateString

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

Returns:

  • (String)


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

def state
  @state
end

#status_messageString

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

Returns:

  • (String)


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

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


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

def suspension_reasons
  @suspension_reasons
end

#tierString

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

Returns:

  • (String)


880
881
882
# File 'lib/google/apis/file_v1beta1/classes.rb', line 880

def tier
  @tier
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
# File 'lib/google/apis/file_v1beta1/classes.rb', line 887

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