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.



967
968
969
# File 'lib/google/apis/file_v1beta1/classes.rb', line 967

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)


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

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)


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

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)


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

def create_time
  @create_time
end

#descriptionString

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

Returns:

  • (String)


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

def description
  @description
end

#directory_servicesGoogle::Apis::FileV1beta1::DirectoryServicesConfig

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



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

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)


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

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



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

def file_shares
  @file_shares
end

#kms_key_nameString

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

Returns:

  • (String)


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

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


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

def labels
  @labels
end

#max_capacity_gbFixnum

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

Returns:

  • (Fixnum)


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

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)


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

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)


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

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)


907
908
909
# File 'lib/google/apis/file_v1beta1/classes.rb', line 907

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



913
914
915
# File 'lib/google/apis/file_v1beta1/classes.rb', line 913

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)


920
921
922
# File 'lib/google/apis/file_v1beta1/classes.rb', line 920

def protocol
  @protocol
end

#replicationGoogle::Apis::FileV1beta1::Replication

Replication specifications. Corresponds to the JSON property replication



925
926
927
# File 'lib/google/apis/file_v1beta1/classes.rb', line 925

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)


930
931
932
# File 'lib/google/apis/file_v1beta1/classes.rb', line 930

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)


936
937
938
# File 'lib/google/apis/file_v1beta1/classes.rb', line 936

def satisfies_pzs
  @satisfies_pzs
end

#stateString

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

Returns:

  • (String)


942
943
944
# File 'lib/google/apis/file_v1beta1/classes.rb', line 942

def state
  @state
end

#status_messageString

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

Returns:

  • (String)


947
948
949
# File 'lib/google/apis/file_v1beta1/classes.rb', line 947

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


953
954
955
# File 'lib/google/apis/file_v1beta1/classes.rb', line 953

def suspension_reasons
  @suspension_reasons
end

#tagsHash<String,String>

Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": " marketing" Corresponds to the JSON property tags

Returns:

  • (Hash<String,String>)


960
961
962
# File 'lib/google/apis/file_v1beta1/classes.rb', line 960

def tags
  @tags
end

#tierString

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

Returns:

  • (String)


965
966
967
# File 'lib/google/apis/file_v1beta1/classes.rb', line 965

def tier
  @tier
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
# File 'lib/google/apis/file_v1beta1/classes.rb', line 972

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)
  @tags = args[:tags] if args.key?(:tags)
  @tier = args[:tier] if args.key?(:tier)
end