# # Copyright (C) 2022 Red Hat # # Licensed under the Apache License, Version 2.0 (the "License"); you may # not use this file except in compliance with the License. You may obtain # a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. # # == Class: swift::constraints # # Configre the [swift-constraints] options # # == Parameters # # [*max_file_size*] # (Optional) The largest "normal" object that can be saved in the cluster. # Defaults to $facts['os_service_default'] # # [*max_meta_name_length*] # (Optional) Max number of bytes in the utf8 encoding of the name portion of # a metadata header. # Defaults to $facts['os_service_default'] # # [*max_meta_value_length*] # (Optional) Max number of bytes in the utf8 encoding of a metadata value. # Defaults to $facts['os_service_default'] # # [*max_meta_count*] # (Optional) Max number of metadata keys that can be store on a single # account, container or object. # Defaults to $facts['os_service_default'] # # [*max_meta_overall_size*] # (Optional) The max number of bytes in the utf8 encoding of the metadata. # Defaults to $facts['os_service_default'] # # [*max_header_size*] # (Optional) Max HTTP header size for incoming requests for all swift # services. # Defaults to $facts['os_service_default'] # # [*extra_header_count*] # (Optional) Allow additional headers in addition to max allowed metadata # plus a default value of 36 for swift internally generated headers and # regular http headers. # Defaults to $facts['os_service_default'] # # [*max_object_name_length*] # (Optional) Max number of bytes in the utf8 encoding of an object name. # Defaults to $facts['os_service_default'] # # [*container_listing_limit*] # (Optional) Default (and max) number of items returned for a container # listing request. # Defaults to $facts['os_service_default'] # # [*account_listing_limit*] # (Optional) Default (and max) number of items returned for an account # listing request. # Defaults to $facts['os_service_default'] # # [*max_account_name_length*] # (Optional) Max number of bytes in the utf8 encoding of an account name. # Defaults to $facts['os_service_default'] # # [*max_container_name_length*] # (Optional) Max number of bytes in the utf8 encoding of a container name. # Defaults to $facts['os_service_default'] # # [*valid_api_versions*] # (Optional) Allowed version strings for all REST API calls. # Defaults to $facts['os_service_default'] # # [*auto_create_account_prefix*] # (Optional) Prefix used for hiddne auto-created accounts. # Defaults to $facts['os_service_default'] # class swift::constraints( $max_file_size = $facts['os_service_default'], $max_meta_name_length = $facts['os_service_default'], $max_meta_value_length = $facts['os_service_default'], $max_meta_count = $facts['os_service_default'], $max_meta_overall_size = $facts['os_service_default'], $max_header_size = $facts['os_service_default'], $extra_header_count = $facts['os_service_default'], $max_object_name_length = $facts['os_service_default'], $container_listing_limit = $facts['os_service_default'], $account_listing_limit = $facts['os_service_default'], $max_account_name_length = $facts['os_service_default'], $max_container_name_length = $facts['os_service_default'], $valid_api_versions = $facts['os_service_default'], $auto_create_account_prefix = $facts['os_service_default'], ) { include swift::deps include swift::params swift_config { 'swift-constraints/max_file_size': value => $max_file_size; 'swift-constraints/max_meta_name_length': value => $max_meta_name_length; 'swift-constraints/max_meta_value_length': value => $max_meta_value_length; 'swift-constraints/max_meta_count': value => $max_meta_count; 'swift-constraints/max_meta_overall_size': value => $max_meta_overall_size; 'swift-constraints/max_header_size': value => $max_header_size; 'swift-constraints/extra_header_count': value => $extra_header_count; 'swift-constraints/max_object_name_length': value => $max_object_name_length; 'swift-constraints/container_listing_limit': value => $container_listing_limit; 'swift-constraints/account_listing_limit': value => $account_listing_limit; 'swift-constraints/max_account_name_length': value => $max_account_name_length; 'swift-constraints/max_container_name_length': value => $max_container_name_length; 'swift-constraints/valid_api_versions': value => join(any2array($valid_api_versions), ','); 'swift-constraints/auto_create_account_prefix': value => $auto_create_account_prefix; } }