2023-04-28 15:24:14 -04:00
// Copyright (c) 2015-2023 MinIO, Inc.
2021-04-18 15:41:13 -04:00
//
// This file is part of MinIO Object Storage stack
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Affero General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Affero General Public License for more details.
//
// You should have received a copy of the GNU Affero General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
2020-04-14 15:46:37 -04:00
package api
2021-06-01 17:59:40 -04:00
import "github.com/minio/minio/internal/config"
2020-04-14 15:46:37 -04:00
var (
2022-04-26 23:11:37 -04:00
defaultHelpPostfix = func ( key string ) string {
return config . DefaultHelpPostfix ( DefaultKVS , key )
}
2024-03-02 00:11:03 -05:00
// Help holds configuration keys and their default values for api subsystem.
2020-04-14 15:46:37 -04:00
Help = config . HelpKVS {
config . HelpKV {
Key : apiRequestsMax ,
2024-08-16 04:43:49 -04:00
Description : ` set the maximum number of concurrent requests (default: auto) ` ,
2020-04-14 15:46:37 -04:00
Optional : true ,
Type : "number" ,
} ,
2021-10-10 12:52:21 -04:00
config . HelpKV {
Key : apiClusterDeadline ,
2022-04-26 23:11:37 -04:00
Description : ` set the deadline for cluster readiness check ` + defaultHelpPostfix ( apiClusterDeadline ) ,
2021-10-10 12:52:21 -04:00
Optional : true ,
Type : "duration" ,
} ,
2020-06-04 17:58:34 -04:00
config . HelpKV {
Key : apiCorsAllowOrigin ,
2022-04-26 23:11:37 -04:00
Description : ` set comma separated list of origins allowed for CORS requests ` + defaultHelpPostfix ( apiCorsAllowOrigin ) ,
2020-06-04 17:58:34 -04:00
Optional : true ,
Type : "csv" ,
} ,
2020-09-12 02:03:08 -04:00
config . HelpKV {
Key : apiRemoteTransportDeadline ,
2022-04-26 23:11:37 -04:00
Description : ` set the deadline for API requests on remote transports while proxying between federated instances e.g. "2h" ` + defaultHelpPostfix ( apiRemoteTransportDeadline ) ,
2020-09-12 02:03:08 -04:00
Optional : true ,
Type : "duration" ,
} ,
2021-10-10 12:52:21 -04:00
config . HelpKV {
Key : apiListQuorum ,
2023-12-29 18:52:41 -05:00
Description : ` set the acceptable quorum expected for list operations e.g. "optimal", "reduced", "disk", "strict", "auto" ` + defaultHelpPostfix ( apiListQuorum ) ,
2021-10-10 12:52:21 -04:00
Optional : true ,
Type : "string" ,
} ,
2021-02-02 06:15:06 -05:00
config . HelpKV {
2022-09-24 19:20:28 -04:00
Key : apiReplicationPriority ,
Description : ` set replication priority ` + defaultHelpPostfix ( apiReplicationPriority ) ,
2021-02-02 06:15:06 -05:00
Optional : true ,
2022-09-24 19:20:28 -04:00
Type : "string" ,
2021-04-24 00:58:45 -04:00
} ,
2023-12-07 19:22:00 -05:00
config . HelpKV {
Key : apiReplicationMaxWorkers ,
Description : ` set the maximum number of replication workers ` + defaultHelpPostfix ( apiReplicationMaxWorkers ) ,
Optional : true ,
Type : "number" ,
} ,
2021-08-12 01:23:56 -04:00
config . HelpKV {
Key : apiTransitionWorkers ,
2022-04-26 23:11:37 -04:00
Description : ` set the number of transition workers ` + defaultHelpPostfix ( apiTransitionWorkers ) ,
2021-08-12 01:23:56 -04:00
Optional : true ,
Type : "number" ,
} ,
2021-10-04 13:52:28 -04:00
config . HelpKV {
Key : apiStaleUploadsExpiry ,
2022-04-26 23:11:37 -04:00
Description : ` set to expire stale multipart uploads older than this values ` + defaultHelpPostfix ( apiStaleUploadsExpiry ) ,
2021-10-04 13:52:28 -04:00
Optional : true ,
Type : "duration" ,
} ,
config . HelpKV {
Key : apiStaleUploadsCleanupInterval ,
2022-04-26 23:11:37 -04:00
Description : ` set to change intervals when stale multipart uploads are expired ` + defaultHelpPostfix ( apiStaleUploadsCleanupInterval ) ,
2021-10-04 13:52:28 -04:00
Optional : true ,
Type : "duration" ,
} ,
config . HelpKV {
Key : apiDeleteCleanupInterval ,
2022-04-26 23:11:37 -04:00
Description : ` set to change intervals when deleted objects are permanently deleted from ".trash" folder ` + defaultHelpPostfix ( apiDeleteCleanupInterval ) ,
2021-10-04 13:52:28 -04:00
Optional : true ,
Type : "duration" ,
} ,
2022-01-17 11:34:14 -05:00
config . HelpKV {
2023-07-31 03:12:53 -04:00
Key : apiODirect ,
2023-11-10 13:10:14 -05:00
Description : "set to enable or disable O_DIRECT for writes under special conditions. NOTE: do not disable O_DIRECT without prior testing" + defaultHelpPostfix ( apiODirect ) ,
2023-04-28 15:24:14 -04:00
Optional : true ,
Type : "boolean" ,
} ,
config . HelpKV {
Key : apiRootAccess ,
Description : "turn 'off' root credential access for all API calls including s3, admin operations" + defaultHelpPostfix ( apiRootAccess ) ,
2022-01-17 11:34:14 -05:00
Optional : true ,
Type : "boolean" ,
} ,
2023-06-20 20:38:59 -04:00
config . HelpKV {
Key : apiSyncEvents ,
Description : "set to enable synchronous bucket notifications" + defaultHelpPostfix ( apiSyncEvents ) ,
Optional : true ,
Type : "boolean" ,
} ,
2024-03-14 21:07:19 -04:00
config . HelpKV {
Key : apiObjectMaxVersions ,
Description : "set max allowed number of versions per object" + defaultHelpPostfix ( apiObjectMaxVersions ) ,
Optional : true ,
Type : "number" ,
} ,
2020-04-14 15:46:37 -04:00
}
)