14714: Adds keep-balance to cluster config loading
[arvados.git] / lib / config / export.go
index ed330454cc77df1f2601abc872c26facaa821357..5437836f6fee05f3aded39954ea8d626d3c12f6e 100644 (file)
@@ -59,60 +59,81 @@ func ExportJSON(w io.Writer, cluster *arvados.Cluster) error {
 // exists.
 var whitelist = map[string]bool{
        // | sort -t'"' -k2,2
-       "ClusterID": true,
-       "API":       true,
-       "API.AsyncPermissionsUpdateInterval":         false,
-       "API.DisabledAPIs":                           false,
-       "API.MaxIndexDatabaseRead":                   false,
-       "API.MaxItemsPerResponse":                    true,
-       "API.MaxRequestAmplification":                false,
-       "API.MaxRequestSize":                         true,
-       "API.RailsSessionSecretToken":                false,
-       "API.RequestTimeout":                         true,
-       "AuditLogs":                                  false,
-       "AuditLogs.MaxAge":                           false,
-       "AuditLogs.MaxDeleteBatch":                   false,
-       "AuditLogs.UnloggedAttributes":               false,
-       "Collections":                                true,
-       "Collections.BlobSigning":                    true,
-       "Collections.BlobSigningKey":                 false,
-       "Collections.BlobSigningTTL":                 true,
-       "Collections.CollectionVersioning":           false,
-       "Collections.DefaultReplication":             true,
-       "Collections.DefaultTrashLifetime":           true,
-       "Collections.ManagedProperties":              true,
-       "Collections.ManagedProperties.*":            true,
-       "Collections.ManagedProperties.*.*":          true,
-       "Collections.PreserveVersionIfIdle":          true,
-       "Collections.TrashSweepInterval":             false,
-       "Collections.TrustAllContent":                false,
-       "Containers":                                 true,
-       "Containers.CloudVMs":                        false,
-       "Containers.DefaultKeepCacheRAM":             true,
-       "Containers.DispatchPrivateKey":              false,
-       "Containers.JobsAPI":                         true,
-       "Containers.JobsAPI.CrunchJobUser":           false,
-       "Containers.JobsAPI.CrunchJobWrapper":        false,
-       "Containers.JobsAPI.CrunchRefreshTrigger":    false,
-       "Containers.JobsAPI.DefaultDockerImage":      false,
-       "Containers.JobsAPI.Enable":                  true,
-       "Containers.JobsAPI.GitInternalDir":          false,
-       "Containers.JobsAPI.ReuseJobIfOutputsDiffer": false,
-       "Containers.Logging":                         false,
-       "Containers.LogReuseDecisions":               false,
-       "Containers.MaxComputeVMs":                   false,
-       "Containers.MaxDispatchAttempts":             false,
-       "Containers.MaxRetryAttempts":                true,
-       "Containers.SLURM":                           false,
-       "Containers.StaleLockTimeout":                false,
-       "Containers.SupportedDockerImageFormats":     true,
-       "Containers.UsePreemptibleInstances":         true,
-       "EnableBetaController14287":                  false,
+       "ClusterID":                                    true,
+       "API":                                          true,
+       "API.AsyncPermissionsUpdateInterval":           false,
+       "API.DisabledAPIs":                             false,
+       "API.MaxConcurrentRequests":                    false,
+       "API.MaxIndexDatabaseRead":                     false,
+       "API.MaxItemsPerResponse":                      true,
+       "API.MaxKeepBlobBuffers":                       false,
+       "API.MaxRequestAmplification":                  false,
+       "API.MaxRequestSize":                           true,
+       "API.RailsSessionSecretToken":                  false,
+       "API.RequestTimeout":                           true,
+       "API.WebsocketClientEventQueue":                false,
+       "API.SendTimeout":                              true,
+       "API.WebsocketServerEventQueue":                false,
+       "API.KeepServiceRequestTimeout":                false,
+       "AuditLogs":                                    false,
+       "AuditLogs.MaxAge":                             false,
+       "AuditLogs.MaxDeleteBatch":                     false,
+       "AuditLogs.UnloggedAttributes":                 false,
+       "Collections":                                  true,
+       "Collections.BlobSigning":                      true,
+       "Collections.BlobSigningKey":                   false,
+       "Collections.BlobSigningTTL":                   true,
+       "Collections.BlobTrash":                        false,
+       "Collections.BlobTrashLifetime":                false,
+       "Collections.BlobTrashConcurrency":             false,
+       "Collections.BlobTrashCheckInterval":           false,
+       "Collections.BlobDeleteConcurrency":            false,
+       "Collections.BlobReplicateConcurrency":         false,
+       "Collections.CollectionVersioning":             false,
+       "Collections.DefaultReplication":               true,
+       "Collections.DefaultTrashLifetime":             true,
+       "Collections.ManagedProperties":                true,
+       "Collections.ManagedProperties.*":              true,
+       "Collections.ManagedProperties.*.*":            true,
+       "Collections.PreserveVersionIfIdle":            true,
+       "Collections.TrashSweepInterval":               false,
+       "Collections.TrustAllContent":                  false,
+       "Collections.WebDAVCache":                      false,
+       "Collections.BalanceCollectionBatch":           false,
+       "Collections.BalancePeriod":                    false,
+       "Collections.BlobMissingReport":                false,
+       "Collections.BalanceCollectionBuffers":         false,
+       "Containers":                                   true,
+       "Containers.CloudVMs":                          false,
+       "Containers.CrunchRunCommand":                  false,
+       "Containers.CrunchRunArgumentsList":            false,
+       "Containers.DefaultKeepCacheRAM":               true,
+       "Containers.DispatchPrivateKey":                false,
+       "Containers.JobsAPI":                           true,
+       "Containers.JobsAPI.Enable":                    true,
+       "Containers.JobsAPI.GitInternalDir":            false,
+       "Containers.Logging":                           false,
+       "Containers.LogReuseDecisions":                 false,
+       "Containers.MaxComputeVMs":                     false,
+       "Containers.MaxDispatchAttempts":               false,
+       "Containers.MaxRetryAttempts":                  true,
+       "Containers.MinRetryPeriod":                    true,
+       "Containers.ReserveExtraRAM":                   true,
+       "Containers.SLURM":                             false,
+       "Containers.StaleLockTimeout":                  false,
+       "Containers.SupportedDockerImageFormats":       true,
+       "Containers.SupportedDockerImageFormats.*":     true,
+       "Containers.UsePreemptibleInstances":           true,
+       "EnableBetaController14287":                    false,
        "Git":                                          false,
        "InstanceTypes":                                true,
        "InstanceTypes.*":                              true,
        "InstanceTypes.*.*":                            true,
-       "Login":                                        false,
+       "Login":                                        true,
+       "Login.ProviderAppSecret":                      false,
+       "Login.ProviderAppID":                          false,
+       "Login.LoginCluster":                           true,
+       "Login.RemoteTokenRefresh":                     true,
        "Mail":                                         false,
        "ManagementToken":                              false,
        "PostgreSQL":                                   false,
@@ -145,6 +166,16 @@ var whitelist = map[string]bool{
        "Users.NewUsersAreActive":                      false,
        "Users.UserNotifierEmailFrom":                  false,
        "Users.UserProfileNotificationAddress":         false,
+       "Volumes":                                      true,
+       "Volumes.*":                                    true,
+       "Volumes.*.*":                                  false,
+       "Volumes.*.AccessViaHosts":                     true,
+       "Volumes.*.AccessViaHosts.*":                   true,
+       "Volumes.*.AccessViaHosts.*.ReadOnly":          true,
+       "Volumes.*.ReadOnly":                           true,
+       "Volumes.*.Replication":                        true,
+       "Volumes.*.StorageClasses":                     true,
+       "Volumes.*.StorageClasses.*":                   false,
        "Workbench":                                    true,
        "Workbench.ActivationContactLink":              false,
        "Workbench.APIClientConnectTimeout":            true,