github.com/minio/minio@v0.0.0-20240328213742-3f72439b8a27/internal/config/api/help.go (about) 1 // Copyright (c) 2015-2023 MinIO, Inc. 2 // 3 // This file is part of MinIO Object Storage stack 4 // 5 // This program is free software: you can redistribute it and/or modify 6 // it under the terms of the GNU Affero General Public License as published by 7 // the Free Software Foundation, either version 3 of the License, or 8 // (at your option) any later version. 9 // 10 // This program is distributed in the hope that it will be useful 11 // but WITHOUT ANY WARRANTY; without even the implied warranty of 12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 // GNU Affero General Public License for more details. 14 // 15 // You should have received a copy of the GNU Affero General Public License 16 // along with this program. If not, see <http://www.gnu.org/licenses/>. 17 18 package api 19 20 import "github.com/minio/minio/internal/config" 21 22 var ( 23 defaultHelpPostfix = func(key string) string { 24 return config.DefaultHelpPostfix(DefaultKVS, key) 25 } 26 27 // Help holds configuration keys and their default values for api subsystem. 28 Help = config.HelpKVS{ 29 config.HelpKV{ 30 Key: apiRequestsMax, 31 Description: `set the maximum number of concurrent requests` + defaultHelpPostfix(apiRequestsMax), 32 Optional: true, 33 Type: "number", 34 }, 35 config.HelpKV{ 36 Key: apiRequestsDeadline, 37 Description: `set the deadline for API requests waiting to be processed` + defaultHelpPostfix(apiRequestsDeadline), 38 Optional: true, 39 Type: "duration", 40 }, 41 config.HelpKV{ 42 Key: apiClusterDeadline, 43 Description: `set the deadline for cluster readiness check` + defaultHelpPostfix(apiClusterDeadline), 44 Optional: true, 45 Type: "duration", 46 }, 47 config.HelpKV{ 48 Key: apiCorsAllowOrigin, 49 Description: `set comma separated list of origins allowed for CORS requests` + defaultHelpPostfix(apiCorsAllowOrigin), 50 Optional: true, 51 Type: "csv", 52 }, 53 config.HelpKV{ 54 Key: apiRemoteTransportDeadline, 55 Description: `set the deadline for API requests on remote transports while proxying between federated instances e.g. "2h"` + defaultHelpPostfix(apiRemoteTransportDeadline), 56 Optional: true, 57 Type: "duration", 58 }, 59 config.HelpKV{ 60 Key: apiListQuorum, 61 Description: `set the acceptable quorum expected for list operations e.g. "optimal", "reduced", "disk", "strict", "auto"` + defaultHelpPostfix(apiListQuorum), 62 Optional: true, 63 Type: "string", 64 }, 65 config.HelpKV{ 66 Key: apiReplicationPriority, 67 Description: `set replication priority` + defaultHelpPostfix(apiReplicationPriority), 68 Optional: true, 69 Type: "string", 70 }, 71 config.HelpKV{ 72 Key: apiReplicationMaxWorkers, 73 Description: `set the maximum number of replication workers` + defaultHelpPostfix(apiReplicationMaxWorkers), 74 Optional: true, 75 Type: "number", 76 }, 77 config.HelpKV{ 78 Key: apiTransitionWorkers, 79 Description: `set the number of transition workers` + defaultHelpPostfix(apiTransitionWorkers), 80 Optional: true, 81 Type: "number", 82 }, 83 config.HelpKV{ 84 Key: apiStaleUploadsExpiry, 85 Description: `set to expire stale multipart uploads older than this values` + defaultHelpPostfix(apiStaleUploadsExpiry), 86 Optional: true, 87 Type: "duration", 88 }, 89 config.HelpKV{ 90 Key: apiStaleUploadsCleanupInterval, 91 Description: `set to change intervals when stale multipart uploads are expired` + defaultHelpPostfix(apiStaleUploadsCleanupInterval), 92 Optional: true, 93 Type: "duration", 94 }, 95 config.HelpKV{ 96 Key: apiDeleteCleanupInterval, 97 Description: `set to change intervals when deleted objects are permanently deleted from ".trash" folder` + defaultHelpPostfix(apiDeleteCleanupInterval), 98 Optional: true, 99 Type: "duration", 100 }, 101 config.HelpKV{ 102 Key: apiODirect, 103 Description: "set to enable or disable O_DIRECT for writes under special conditions. NOTE: do not disable O_DIRECT without prior testing" + defaultHelpPostfix(apiODirect), 104 Optional: true, 105 Type: "boolean", 106 }, 107 config.HelpKV{ 108 Key: apiRootAccess, 109 Description: "turn 'off' root credential access for all API calls including s3, admin operations" + defaultHelpPostfix(apiRootAccess), 110 Optional: true, 111 Type: "boolean", 112 }, 113 config.HelpKV{ 114 Key: apiSyncEvents, 115 Description: "set to enable synchronous bucket notifications" + defaultHelpPostfix(apiSyncEvents), 116 Optional: true, 117 Type: "boolean", 118 }, 119 config.HelpKV{ 120 Key: apiObjectMaxVersions, 121 Description: "set max allowed number of versions per object" + defaultHelpPostfix(apiObjectMaxVersions), 122 Optional: true, 123 Type: "number", 124 }, 125 } 126 )