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.



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

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)


772
773
774
# File 'lib/google/apis/file_v1beta1/classes.rb', line 772

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)


777
778
779
# File 'lib/google/apis/file_v1beta1/classes.rb', line 777

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)


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

def create_time
  @create_time
end

#descriptionString

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

Returns:

  • (String)


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

def description
  @description
end

#directory_servicesGoogle::Apis::FileV1beta1::DirectoryServicesConfig

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



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

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)


798
799
800
# File 'lib/google/apis/file_v1beta1/classes.rb', line 798

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



804
805
806
# File 'lib/google/apis/file_v1beta1/classes.rb', line 804

def file_shares
  @file_shares
end

#kms_key_nameString

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

Returns:

  • (String)


809
810
811
# File 'lib/google/apis/file_v1beta1/classes.rb', line 809

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


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

def labels
  @labels
end

#max_capacity_gbFixnum

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

Returns:

  • (Fixnum)


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

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)


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

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)


831
832
833
# File 'lib/google/apis/file_v1beta1/classes.rb', line 831

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)


838
839
840
# File 'lib/google/apis/file_v1beta1/classes.rb', line 838

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



844
845
846
# File 'lib/google/apis/file_v1beta1/classes.rb', line 844

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)


851
852
853
# File 'lib/google/apis/file_v1beta1/classes.rb', line 851

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)


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

def satisfies_pzs
  @satisfies_pzs
end

#stateString

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

Returns:

  • (String)


862
863
864
# File 'lib/google/apis/file_v1beta1/classes.rb', line 862

def state
  @state
end

#status_messageString

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

Returns:

  • (String)


867
868
869
# File 'lib/google/apis/file_v1beta1/classes.rb', line 867

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


873
874
875
# File 'lib/google/apis/file_v1beta1/classes.rb', line 873

def suspension_reasons
  @suspension_reasons
end

#tierString

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

Returns:

  • (String)


878
879
880
# File 'lib/google/apis/file_v1beta1/classes.rb', line 878

def tier
  @tier
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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