# encoding: utf-8 # Code generated by Microsoft (R) AutoRest Code Generator. # Changes may cause incorrect behavior and will be lost if the code is # regenerated. module Azure::Redis::Mgmt::V2018_03_01 module Models # # A single Redis item in List or Get Operation. # class RedisResource < TrackedResource include MsRestAzure # @return [Hash{String => String}] All Redis Settings. Few possible keys: # rdb-backup-enabled,rdb-storage-connection-string,rdb-backup-frequency,maxmemory-delta,maxmemory-policy,notify-keyspace-events,maxmemory-samples,slowlog-log-slower-than,slowlog-max-len,list-max-ziplist-entries,list-max-ziplist-value,hash-max-ziplist-entries,hash-max-ziplist-value,set-max-intset-entries,zset-max-ziplist-entries,zset-max-ziplist-value # etc. attr_accessor :redis_configuration # @return [Boolean] Specifies whether the non-ssl Redis server port # (6379) is enabled. attr_accessor :enable_non_ssl_port # @return [Hash{String => String}] A dictionary of tenant settings attr_accessor :tenant_settings # @return [Integer] The number of shards to be created on a Premium # Cluster Cache. attr_accessor :shard_count # @return [TlsVersion] Optional: requires clients to use a specified TLS # version (or higher) to connect (e,g, '1.0', '1.1', '1.2'). Possible # values include: '1.0', '1.1', '1.2' attr_accessor :minimum_tls_version # @return [Sku] The SKU of the Redis cache to deploy. attr_accessor :sku # @return [String] The full resource ID of a subnet in a virtual network # to deploy the Redis cache in. Example format: # /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/Microsoft.{Network|ClassicNetwork}/VirtualNetworks/vnet1/subnets/subnet1 attr_accessor :subnet_id # @return [String] Static IP address. Required when deploying a Redis # cache inside an existing Azure Virtual Network. attr_accessor :static_ip # @return [String] Redis version. attr_accessor :redis_version # @return [ProvisioningState] Redis instance provisioning status. # Possible values include: 'Creating', 'Deleting', 'Disabled', 'Failed', # 'Linking', 'Provisioning', 'RecoveringScaleFailure', 'Scaling', # 'Succeeded', 'Unlinking', 'Unprovisioning', 'Updating' attr_accessor :provisioning_state # @return [String] Redis host name. attr_accessor :host_name # @return [Integer] Redis non-SSL port. attr_accessor :port # @return [Integer] Redis SSL port. attr_accessor :ssl_port # @return [RedisAccessKeys] The keys of the Redis cache - not set if this # object is not the response to Create or Update redis cache attr_accessor :access_keys # @return [Array] List of the linked servers # associated with the cache attr_accessor :linked_servers # @return [Array] A list of availability zones denoting where the # resource needs to come from. attr_accessor :zones # # Mapper for RedisResource class as Ruby Hash. # This will be used for serialization/deserialization. # def self.mapper() { client_side_validation: true, required: false, serialized_name: 'RedisResource', type: { name: 'Composite', class_name: 'RedisResource', model_properties: { id: { client_side_validation: true, required: false, read_only: true, serialized_name: 'id', type: { name: 'String' } }, name: { client_side_validation: true, required: false, read_only: true, serialized_name: 'name', type: { name: 'String' } }, type: { client_side_validation: true, required: false, read_only: true, serialized_name: 'type', type: { name: 'String' } }, tags: { client_side_validation: true, required: false, serialized_name: 'tags', type: { name: 'Dictionary', value: { client_side_validation: true, required: false, serialized_name: 'StringElementType', type: { name: 'String' } } } }, location: { client_side_validation: true, required: true, serialized_name: 'location', type: { name: 'String' } }, redis_configuration: { client_side_validation: true, required: false, serialized_name: 'properties.redisConfiguration', type: { name: 'Dictionary', value: { client_side_validation: true, required: false, serialized_name: 'StringElementType', type: { name: 'String' } } } }, enable_non_ssl_port: { client_side_validation: true, required: false, serialized_name: 'properties.enableNonSslPort', type: { name: 'Boolean' } }, tenant_settings: { client_side_validation: true, required: false, serialized_name: 'properties.tenantSettings', type: { name: 'Dictionary', value: { client_side_validation: true, required: false, serialized_name: 'StringElementType', type: { name: 'String' } } } }, shard_count: { client_side_validation: true, required: false, serialized_name: 'properties.shardCount', type: { name: 'Number' } }, minimum_tls_version: { client_side_validation: true, required: false, serialized_name: 'properties.minimumTlsVersion', type: { name: 'String' } }, sku: { client_side_validation: true, required: true, serialized_name: 'properties.sku', type: { name: 'Composite', class_name: 'Sku' } }, subnet_id: { client_side_validation: true, required: false, serialized_name: 'properties.subnetId', constraints: { Pattern: '^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$' }, type: { name: 'String' } }, static_ip: { client_side_validation: true, required: false, serialized_name: 'properties.staticIP', constraints: { Pattern: '^\d+\.\d+\.\d+\.\d+$' }, type: { name: 'String' } }, redis_version: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.redisVersion', type: { name: 'String' } }, provisioning_state: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.provisioningState', type: { name: 'String' } }, host_name: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.hostName', type: { name: 'String' } }, port: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.port', type: { name: 'Number' } }, ssl_port: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.sslPort', type: { name: 'Number' } }, access_keys: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.accessKeys', type: { name: 'Composite', class_name: 'RedisAccessKeys' } }, linked_servers: { client_side_validation: true, required: false, read_only: true, serialized_name: 'properties.linkedServers', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'RedisLinkedServerElementType', type: { name: 'Composite', class_name: 'RedisLinkedServer' } } } }, zones: { client_side_validation: true, required: false, serialized_name: 'zones', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'StringElementType', type: { name: 'String' } } } } } } } end end end end