# 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::ServiceFabric::Mgmt::V2017_07_01_preview module Models # # Cluster update request # class ClusterUpdateParameters include MsRestAzure # @return [Enum] The reliability level sets the replica set size of # system services. Learn about # [ReliabilityLevel](https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-cluster-capacity). # Possible values include: 'Bronze', 'Silver', 'Gold' attr_accessor :reliability_level # @return [Enum] The upgrade mode of the cluster. This indicates if the # cluster should be automatically upgraded when new Service Fabric # runtime version is available. Possible values include: 'Automatic', # 'Manual' attr_accessor :upgrade_mode # @return [String] The Service Fabric runtime version of the cluster. # This property can only by set the user when **upgradeMode** is set to # 'Manual'. To get list of available Service Fabric versions for new # clusters use [ClusterVersion API](./ClusterVersion.md). To get the list # of available version for existing clusters use # **availableClusterVersions**. attr_accessor :cluster_code_version # @return [CertificateDescription] The certificate to use for securing # the cluster. The certificate provided will be used for node to node # security within the cluster, SSL certificate for cluster management # endpoint and default admin client. attr_accessor :certificate # @return [Array] The list of client # certificates referenced by thumbprint that are allowed to manage the # cluster. This will overwrite the existing list. attr_accessor :client_certificate_thumbprints # @return [Array] The list of client # certificates referenced by common name that are allowed to manage the # cluster. This will overwrite the existing list. attr_accessor :client_certificate_common_names # @return [Array] The list of custom fabric # settings to configure the cluster. This will overwrite the existing # list. attr_accessor :fabric_settings # @return [CertificateDescription] The server certificate used by reverse # proxy. attr_accessor :reverse_proxy_certificate # @return [Array] The list of node types in the # cluster. This will overwrite the existing list. attr_accessor :node_types # @return [ClusterUpgradePolicy] The policy to use when upgrading the # cluster. attr_accessor :upgrade_description # @return [Array] The list of add-on features to enable in the # cluster. attr_accessor :add_on_features # @return [Hash{String => String}] Cluster update parameters attr_accessor :tags # # Mapper for ClusterUpdateParameters class as Ruby Hash. # This will be used for serialization/deserialization. # def self.mapper() { client_side_validation: true, required: false, serialized_name: 'ClusterUpdateParameters', type: { name: 'Composite', class_name: 'ClusterUpdateParameters', model_properties: { reliability_level: { client_side_validation: true, required: false, serialized_name: 'properties.reliabilityLevel', type: { name: 'String' } }, upgrade_mode: { client_side_validation: true, required: false, serialized_name: 'properties.upgradeMode', type: { name: 'String' } }, cluster_code_version: { client_side_validation: true, required: false, serialized_name: 'properties.clusterCodeVersion', type: { name: 'String' } }, certificate: { client_side_validation: true, required: false, serialized_name: 'properties.certificate', type: { name: 'Composite', class_name: 'CertificateDescription' } }, client_certificate_thumbprints: { client_side_validation: true, required: false, serialized_name: 'properties.clientCertificateThumbprints', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'ClientCertificateThumbprintElementType', type: { name: 'Composite', class_name: 'ClientCertificateThumbprint' } } } }, client_certificate_common_names: { client_side_validation: true, required: false, serialized_name: 'properties.clientCertificateCommonNames', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'ClientCertificateCommonNameElementType', type: { name: 'Composite', class_name: 'ClientCertificateCommonName' } } } }, fabric_settings: { client_side_validation: true, required: false, serialized_name: 'properties.fabricSettings', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'SettingsSectionDescriptionElementType', type: { name: 'Composite', class_name: 'SettingsSectionDescription' } } } }, reverse_proxy_certificate: { client_side_validation: true, required: false, serialized_name: 'properties.reverseProxyCertificate', type: { name: 'Composite', class_name: 'CertificateDescription' } }, node_types: { client_side_validation: true, required: false, serialized_name: 'properties.nodeTypes', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'NodeTypeDescriptionElementType', type: { name: 'Composite', class_name: 'NodeTypeDescription' } } } }, upgrade_description: { client_side_validation: true, required: false, serialized_name: 'properties.upgradeDescription', type: { name: 'Composite', class_name: 'ClusterUpgradePolicy' } }, add_on_features: { client_side_validation: true, required: false, serialized_name: 'properties.addOnFeatures', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'enumElementType', 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' } } } } } } } end end end end