Class: Google::Apis::FileV1beta1::Instance
- Inherits:
-
Object
- Object
- Google::Apis::FileV1beta1::Instance
- 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
-
#capacity_gb ⇒ Fixnum
The storage capacity of the instance in gigabytes (GB = 1024^3 bytes).
-
#capacity_step_size_gb ⇒ Fixnum
Output only.
-
#configurable_performance_enabled ⇒ Boolean
(also: #configurable_performance_enabled?)
Output only.
-
#create_time ⇒ String
Output only.
-
#deletion_protection_enabled ⇒ Boolean
(also: #deletion_protection_enabled?)
Optional.
-
#deletion_protection_reason ⇒ String
Optional.
-
#description ⇒ String
The description of the instance (2048 characters or less).
-
#directory_services ⇒ Google::Apis::FileV1beta1::DirectoryServicesConfig
Directory Services configuration for Kerberos-based authentication.
-
#etag ⇒ String
Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
-
#file_shares ⇒ Array<Google::Apis::FileV1beta1::FileShareConfig>
File system shares on the instance.
-
#kms_key_name ⇒ String
KMS key name used for data encryption.
-
#labels ⇒ Hash<String,String>
Resource labels to represent user provided metadata.
-
#max_capacity_gb ⇒ Fixnum
Output only.
-
#max_share_count ⇒ Fixnum
The max number of shares allowed.
-
#multi_share_enabled ⇒ Boolean
(also: #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.
-
#name ⇒ String
Output only.
-
#networks ⇒ Array<Google::Apis::FileV1beta1::NetworkConfig>
VPC networks to which the instance is connected.
-
#performance_config ⇒ Google::Apis::FileV1beta1::PerformanceConfig
Used for setting the performance configuration.
-
#performance_limits ⇒ Google::Apis::FileV1beta1::PerformanceLimits
The enforced performance limits, calculated from the instance's performance configuration.
-
#protocol ⇒ String
Immutable.
-
#replication ⇒ Google::Apis::FileV1beta1::Replication
Replication specifications.
-
#satisfies_pzi ⇒ Boolean
(also: #satisfies_pzi?)
Output only.
-
#satisfies_pzs ⇒ Boolean
(also: #satisfies_pzs?)
Output only.
-
#state ⇒ String
Output only.
-
#status_message ⇒ String
Output only.
-
#suspension_reasons ⇒ Array<String>
Output only.
-
#tags ⇒ Hash<String,String>
Optional.
-
#tier ⇒ String
The service tier of the instance.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Instance
constructor
A new instance of Instance.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Instance
Returns a new instance of Instance.
1002 1003 1004 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 1002 def initialize(**args) update!(**args) end |
Instance Attribute Details
#capacity_gb ⇒ Fixnum
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
838 839 840 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 838 def capacity_gb @capacity_gb end |
#capacity_step_size_gb ⇒ Fixnum
Output only. The increase/decrease capacity step size.
Corresponds to the JSON property capacityStepSizeGb
843 844 845 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 843 def capacity_step_size_gb @capacity_step_size_gb end |
#configurable_performance_enabled ⇒ Boolean 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
849 850 851 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 849 def configurable_performance_enabled @configurable_performance_enabled end |
#create_time ⇒ String
Output only. The time when the instance was created.
Corresponds to the JSON property createTime
855 856 857 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 855 def create_time @create_time end |
#deletion_protection_enabled ⇒ Boolean Also known as: deletion_protection_enabled?
Optional. Indicates whether the instance is protected against deletion.
Corresponds to the JSON property deletionProtectionEnabled
860 861 862 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 860 def deletion_protection_enabled @deletion_protection_enabled end |
#deletion_protection_reason ⇒ String
Optional. The reason for enabling deletion protection.
Corresponds to the JSON property deletionProtectionReason
866 867 868 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 866 def deletion_protection_reason @deletion_protection_reason end |
#description ⇒ String
The description of the instance (2048 characters or less).
Corresponds to the JSON property description
871 872 873 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 871 def description @description end |
#directory_services ⇒ Google::Apis::FileV1beta1::DirectoryServicesConfig
Directory Services configuration for Kerberos-based authentication.
Corresponds to the JSON property directoryServices
876 877 878 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 876 def directory_services @directory_services end |
#etag ⇒ String
Server-specified ETag for the instance resource to prevent simultaneous
updates from overwriting each other.
Corresponds to the JSON property etag
882 883 884 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 882 def etag @etag end |
#file_shares ⇒ Array<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
888 889 890 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 888 def file_shares @file_shares end |
#kms_key_name ⇒ String
KMS key name used for data encryption.
Corresponds to the JSON property kmsKeyName
893 894 895 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 893 def kms_key_name @kms_key_name end |
#labels ⇒ Hash<String,String>
Resource labels to represent user provided metadata.
Corresponds to the JSON property labels
898 899 900 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 898 def labels @labels end |
#max_capacity_gb ⇒ Fixnum
Output only. The max capacity of the instance.
Corresponds to the JSON property maxCapacityGb
903 904 905 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 903 def max_capacity_gb @max_capacity_gb end |
#max_share_count ⇒ Fixnum
The max number of shares allowed.
Corresponds to the JSON property maxShareCount
908 909 910 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 908 def max_share_count @max_share_count end |
#multi_share_enabled ⇒ Boolean Also known as:
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
915 916 917 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 915 def multi_share_enabled @multi_share_enabled end |
#name ⇒ String
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`
922 923 924 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 922 def name @name end |
#networks ⇒ Array<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
928 929 930 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 928 def networks @networks end |
#performance_config ⇒ Google::Apis::FileV1beta1::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
938 939 940 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 938 def performance_config @performance_config end |
#performance_limits ⇒ Google::Apis::FileV1beta1::PerformanceLimits
The enforced performance limits, calculated from the instance's performance
configuration.
Corresponds to the JSON property performanceLimits
944 945 946 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 944 def performance_limits @performance_limits end |
#protocol ⇒ String
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
951 952 953 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 951 def protocol @protocol end |
#replication ⇒ Google::Apis::FileV1beta1::Replication
Replication specifications.
Corresponds to the JSON property replication
956 957 958 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 956 def replication @replication end |
#satisfies_pzi ⇒ Boolean Also known as: satisfies_pzi?
Output only. Reserved for future use.
Corresponds to the JSON property satisfiesPzi
961 962 963 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 961 def satisfies_pzi @satisfies_pzi end |
#satisfies_pzs ⇒ Boolean Also known as: satisfies_pzs?
Output only. Reserved for future use.
Corresponds to the JSON property satisfiesPzs
967 968 969 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 967 def satisfies_pzs @satisfies_pzs end |
#state ⇒ String
Output only. The instance state.
Corresponds to the JSON property state
973 974 975 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 973 def state @state end |
#status_message ⇒ String
Output only. Additional information about the instance state, if available.
Corresponds to the JSON property statusMessage
978 979 980 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 978 def @status_message end |
#suspension_reasons ⇒ Array<String>
Output only. Field indicates all the reasons the instance is in "SUSPENDED"
state.
Corresponds to the JSON property suspensionReasons
984 985 986 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 984 def suspension_reasons @suspension_reasons end |
#tags ⇒ Hash<String,String>
Optional. Input only. Immutable. Tag key-value pairs bound to this resource.
Each key must be a namespaced name and each value a short name. Example: "
123456789012/environment" : "production", "123456789013/costCenter" : "
marketing" See the documentation for more information: - Namespaced name:
https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing#
retrieving_tag_key - Short name: https://cloud.google.com/resource-manager/
docs/tags/tags-creating-and-managing#retrieving_tag_value
Corresponds to the JSON property tags
995 996 997 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 995 def @tags end |
#tier ⇒ String
The service tier of the instance.
Corresponds to the JSON property tier
1000 1001 1002 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 1000 def tier @tier end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 |
# File 'lib/google/apis/file_v1beta1/classes.rb', line 1007 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) @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) @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) @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 |