Class: Google::Apis::NetappV1::Volume

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/netapp_v1/classes.rb,
lib/google/apis/netapp_v1/representations.rb,
lib/google/apis/netapp_v1/representations.rb

Overview

Volume provides a filesystem that you can mount.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Volume

Returns a new instance of Volume.



2206
2207
2208
# File 'lib/google/apis/netapp_v1/classes.rb', line 2206

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

Instance Attribute Details

#active_directoryString

Output only. Specifies the ActiveDirectory name of a SMB volume. Corresponds to the JSON property activeDirectory

Returns:

  • (String)


2006
2007
2008
# File 'lib/google/apis/netapp_v1/classes.rb', line 2006

def active_directory
  @active_directory
end

#backup_configGoogle::Apis::NetappV1::BackupConfig

BackupConfig contains backup related config on a volume. Corresponds to the JSON property backupConfig



2011
2012
2013
# File 'lib/google/apis/netapp_v1/classes.rb', line 2011

def backup_config
  @backup_config
end

#capacity_gibFixnum

Required. Capacity in GIB of the volume Corresponds to the JSON property capacityGib

Returns:

  • (Fixnum)


2016
2017
2018
# File 'lib/google/apis/netapp_v1/classes.rb', line 2016

def capacity_gib
  @capacity_gib
end

#cold_tier_size_gibFixnum

Output only. Size of the volume cold tier data in GiB. Corresponds to the JSON property coldTierSizeGib

Returns:

  • (Fixnum)


2021
2022
2023
# File 'lib/google/apis/netapp_v1/classes.rb', line 2021

def cold_tier_size_gib
  @cold_tier_size_gib
end

#create_timeString

Output only. Create time of the volume Corresponds to the JSON property createTime

Returns:

  • (String)


2026
2027
2028
# File 'lib/google/apis/netapp_v1/classes.rb', line 2026

def create_time
  @create_time
end

#descriptionString

Optional. Description of the volume Corresponds to the JSON property description

Returns:

  • (String)


2031
2032
2033
# File 'lib/google/apis/netapp_v1/classes.rb', line 2031

def description
  @description
end

#encryption_typeString

Output only. Specified the current volume encryption key source. Corresponds to the JSON property encryptionType

Returns:

  • (String)


2036
2037
2038
# File 'lib/google/apis/netapp_v1/classes.rb', line 2036

def encryption_type
  @encryption_type
end

#export_policyGoogle::Apis::NetappV1::ExportPolicy

Defines the export policy for the volume. Corresponds to the JSON property exportPolicy



2041
2042
2043
# File 'lib/google/apis/netapp_v1/classes.rb', line 2041

def export_policy
  @export_policy
end

#has_replicationBoolean Also known as: has_replication?

Output only. Indicates whether the volume is part of a replication relationship. Corresponds to the JSON property hasReplication

Returns:

  • (Boolean)


2047
2048
2049
# File 'lib/google/apis/netapp_v1/classes.rb', line 2047

def has_replication
  @has_replication
end

#kerberos_enabledBoolean Also known as: kerberos_enabled?

Optional. Flag indicating if the volume is a kerberos volume or not, export policy rules control kerberos security modes (krb5, krb5i, krb5p). Corresponds to the JSON property kerberosEnabled

Returns:

  • (Boolean)


2054
2055
2056
# File 'lib/google/apis/netapp_v1/classes.rb', line 2054

def kerberos_enabled
  @kerberos_enabled
end

#kms_configString

Output only. Specifies the KMS config to be used for volume encryption. Corresponds to the JSON property kmsConfig

Returns:

  • (String)


2060
2061
2062
# File 'lib/google/apis/netapp_v1/classes.rb', line 2060

def kms_config
  @kms_config
end

#labelsHash<String,String>

Optional. Labels as key value pairs Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


2065
2066
2067
# File 'lib/google/apis/netapp_v1/classes.rb', line 2065

def labels
  @labels
end

#large_capacityBoolean Also known as: large_capacity?

Optional. Flag indicating if the volume will be a large capacity volume or a regular volume. Corresponds to the JSON property largeCapacity

Returns:

  • (Boolean)


2071
2072
2073
# File 'lib/google/apis/netapp_v1/classes.rb', line 2071

def large_capacity
  @large_capacity
end

#ldap_enabledBoolean Also known as: ldap_enabled?

Output only. Flag indicating if the volume is NFS LDAP enabled or not. Corresponds to the JSON property ldapEnabled

Returns:

  • (Boolean)


2077
2078
2079
# File 'lib/google/apis/netapp_v1/classes.rb', line 2077

def ldap_enabled
  @ldap_enabled
end

#mount_optionsArray<Google::Apis::NetappV1::MountOption>

Output only. Mount options of this volume Corresponds to the JSON property mountOptions



2083
2084
2085
# File 'lib/google/apis/netapp_v1/classes.rb', line 2083

def mount_options
  @mount_options
end

#multiple_endpointsBoolean Also known as: multiple_endpoints?

Optional. Flag indicating if the volume will have an IP address per node for volumes supporting multiple IP endpoints. Only the volume with large_capacity will be allowed to have multiple endpoints. Corresponds to the JSON property multipleEndpoints

Returns:

  • (Boolean)


2090
2091
2092
# File 'lib/google/apis/netapp_v1/classes.rb', line 2090

def multiple_endpoints
  @multiple_endpoints
end

#nameString

Identifier. Name of the volume Corresponds to the JSON property name

Returns:

  • (String)


2096
2097
2098
# File 'lib/google/apis/netapp_v1/classes.rb', line 2096

def name
  @name
end

#networkString

Output only. VPC Network name. Format: projects/project/global/networks/ network Corresponds to the JSON property network

Returns:

  • (String)


2102
2103
2104
# File 'lib/google/apis/netapp_v1/classes.rb', line 2102

def network
  @network
end

#protocolsArray<String>

Required. Protocols required for the volume Corresponds to the JSON property protocols

Returns:

  • (Array<String>)


2107
2108
2109
# File 'lib/google/apis/netapp_v1/classes.rb', line 2107

def protocols
  @protocols
end

#psa_rangeString

Output only. This field is not implemented. The values provided in this field are ignored. Corresponds to the JSON property psaRange

Returns:

  • (String)


2113
2114
2115
# File 'lib/google/apis/netapp_v1/classes.rb', line 2113

def psa_range
  @psa_range
end

#replica_zoneString

Output only. Specifies the replica zone for regional volume. Corresponds to the JSON property replicaZone

Returns:

  • (String)


2118
2119
2120
# File 'lib/google/apis/netapp_v1/classes.rb', line 2118

def replica_zone
  @replica_zone
end

#restore_parametersGoogle::Apis::NetappV1::RestoreParameters

The RestoreParameters if volume is created from a snapshot or backup. Corresponds to the JSON property restoreParameters



2123
2124
2125
# File 'lib/google/apis/netapp_v1/classes.rb', line 2123

def restore_parameters
  @restore_parameters
end

#restricted_actionsArray<String>

Optional. List of actions that are restricted on this volume. Corresponds to the JSON property restrictedActions

Returns:

  • (Array<String>)


2128
2129
2130
# File 'lib/google/apis/netapp_v1/classes.rb', line 2128

def restricted_actions
  @restricted_actions
end

#security_styleString

Optional. Security Style of the Volume Corresponds to the JSON property securityStyle

Returns:

  • (String)


2133
2134
2135
# File 'lib/google/apis/netapp_v1/classes.rb', line 2133

def security_style
  @security_style
end

#service_levelString

Output only. Service level of the volume Corresponds to the JSON property serviceLevel

Returns:

  • (String)


2138
2139
2140
# File 'lib/google/apis/netapp_v1/classes.rb', line 2138

def service_level
  @service_level
end

#share_nameString

Required. Share name of the volume Corresponds to the JSON property shareName

Returns:

  • (String)


2143
2144
2145
# File 'lib/google/apis/netapp_v1/classes.rb', line 2143

def share_name
  @share_name
end

#smb_settingsArray<String>

Optional. SMB share settings for the volume. Corresponds to the JSON property smbSettings

Returns:

  • (Array<String>)


2148
2149
2150
# File 'lib/google/apis/netapp_v1/classes.rb', line 2148

def smb_settings
  @smb_settings
end

#snap_reserveFloat

Optional. Snap_reserve specifies percentage of volume storage reserved for snapshot storage. Default is 0 percent. Corresponds to the JSON property snapReserve

Returns:

  • (Float)


2154
2155
2156
# File 'lib/google/apis/netapp_v1/classes.rb', line 2154

def snap_reserve
  @snap_reserve
end

#snapshot_directoryBoolean Also known as: snapshot_directory?

Optional. Snapshot_directory if enabled (true) the volume will contain a read- only .snapshot directory which provides access to each of the volume's snapshots. Corresponds to the JSON property snapshotDirectory

Returns:

  • (Boolean)


2161
2162
2163
# File 'lib/google/apis/netapp_v1/classes.rb', line 2161

def snapshot_directory
  @snapshot_directory
end

#snapshot_policyGoogle::Apis::NetappV1::SnapshotPolicy

Snapshot Policy for a volume. Corresponds to the JSON property snapshotPolicy



2167
2168
2169
# File 'lib/google/apis/netapp_v1/classes.rb', line 2167

def snapshot_policy
  @snapshot_policy
end

#stateString

Output only. State of the volume Corresponds to the JSON property state

Returns:

  • (String)


2172
2173
2174
# File 'lib/google/apis/netapp_v1/classes.rb', line 2172

def state
  @state
end

#state_detailsString

Output only. State details of the volume Corresponds to the JSON property stateDetails

Returns:

  • (String)


2177
2178
2179
# File 'lib/google/apis/netapp_v1/classes.rb', line 2177

def state_details
  @state_details
end

#storage_poolString

Required. StoragePool name of the volume Corresponds to the JSON property storagePool

Returns:

  • (String)


2182
2183
2184
# File 'lib/google/apis/netapp_v1/classes.rb', line 2182

def storage_pool
  @storage_pool
end

#tiering_policyGoogle::Apis::NetappV1::TieringPolicy

Defines tiering policy for the volume. Corresponds to the JSON property tieringPolicy



2187
2188
2189
# File 'lib/google/apis/netapp_v1/classes.rb', line 2187

def tiering_policy
  @tiering_policy
end

#unix_permissionsString

Optional. Default unix style permission (e.g. 777) the mount point will be created with. Applicable for NFS protocol types only. Corresponds to the JSON property unixPermissions

Returns:

  • (String)


2193
2194
2195
# File 'lib/google/apis/netapp_v1/classes.rb', line 2193

def unix_permissions
  @unix_permissions
end

#used_gibFixnum

Output only. Used capacity in GIB of the volume. This is computed periodically and it does not represent the realtime usage. Corresponds to the JSON property usedGib

Returns:

  • (Fixnum)


2199
2200
2201
# File 'lib/google/apis/netapp_v1/classes.rb', line 2199

def used_gib
  @used_gib
end

#zoneString

Output only. Specifies the active zone for regional volume. Corresponds to the JSON property zone

Returns:

  • (String)


2204
2205
2206
# File 'lib/google/apis/netapp_v1/classes.rb', line 2204

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
# File 'lib/google/apis/netapp_v1/classes.rb', line 2211

def update!(**args)
  @active_directory = args[:active_directory] if args.key?(:active_directory)
  @backup_config = args[:backup_config] if args.key?(:backup_config)
  @capacity_gib = args[:capacity_gib] if args.key?(:capacity_gib)
  @cold_tier_size_gib = args[:cold_tier_size_gib] if args.key?(:cold_tier_size_gib)
  @create_time = args[:create_time] if args.key?(:create_time)
  @description = args[:description] if args.key?(:description)
  @encryption_type = args[:encryption_type] if args.key?(:encryption_type)
  @export_policy = args[:export_policy] if args.key?(:export_policy)
  @has_replication = args[:has_replication] if args.key?(:has_replication)
  @kerberos_enabled = args[:kerberos_enabled] if args.key?(:kerberos_enabled)
  @kms_config = args[:kms_config] if args.key?(:kms_config)
  @labels = args[:labels] if args.key?(:labels)
  @large_capacity = args[:large_capacity] if args.key?(:large_capacity)
  @ldap_enabled = args[:ldap_enabled] if args.key?(:ldap_enabled)
  @mount_options = args[:mount_options] if args.key?(:mount_options)
  @multiple_endpoints = args[:multiple_endpoints] if args.key?(:multiple_endpoints)
  @name = args[:name] if args.key?(:name)
  @network = args[:network] if args.key?(:network)
  @protocols = args[:protocols] if args.key?(:protocols)
  @psa_range = args[:psa_range] if args.key?(:psa_range)
  @replica_zone = args[:replica_zone] if args.key?(:replica_zone)
  @restore_parameters = args[:restore_parameters] if args.key?(:restore_parameters)
  @restricted_actions = args[:restricted_actions] if args.key?(:restricted_actions)
  @security_style = args[:security_style] if args.key?(:security_style)
  @service_level = args[:service_level] if args.key?(:service_level)
  @share_name = args[:share_name] if args.key?(:share_name)
  @smb_settings = args[:smb_settings] if args.key?(:smb_settings)
  @snap_reserve = args[:snap_reserve] if args.key?(:snap_reserve)
  @snapshot_directory = args[:snapshot_directory] if args.key?(:snapshot_directory)
  @snapshot_policy = args[:snapshot_policy] if args.key?(:snapshot_policy)
  @state = args[:state] if args.key?(:state)
  @state_details = args[:state_details] if args.key?(:state_details)
  @storage_pool = args[:storage_pool] if args.key?(:storage_pool)
  @tiering_policy = args[:tiering_policy] if args.key?(:tiering_policy)
  @unix_permissions = args[:unix_permissions] if args.key?(:unix_permissions)
  @used_gib = args[:used_gib] if args.key?(:used_gib)
  @zone = args[:zone] if args.key?(:zone)
end