Merge branch '18691-freeze-project'
[arvados.git] / sdk / go / arvados / config.go
index 474ce33b0ee4e9b2262bbe1b16f9ed36c0c2af38..e0750bd8c54ae0a671f282ba9438d23e0bfb48ad 100644 (file)
@@ -94,21 +94,24 @@ type Cluster struct {
        PostgreSQL      PostgreSQL
 
        API struct {
-               AsyncPermissionsUpdateInterval Duration
-               DisabledAPIs                   StringSet
-               MaxIndexDatabaseRead           int
-               MaxItemsPerResponse            int
-               MaxConcurrentRequests          int
-               MaxKeepBlobBuffers             int
-               MaxRequestAmplification        int
-               MaxRequestSize                 int
-               MaxTokenLifetime               Duration
-               RequestTimeout                 Duration
-               SendTimeout                    Duration
-               WebsocketClientEventQueue      int
-               WebsocketServerEventQueue      int
-               KeepServiceRequestTimeout      Duration
-               VocabularyPath                 string
+               AsyncPermissionsUpdateInterval   Duration
+               DisabledAPIs                     StringSet
+               MaxIndexDatabaseRead             int
+               MaxItemsPerResponse              int
+               MaxConcurrentRequests            int
+               MaxKeepBlobBuffers               int
+               MaxRequestAmplification          int
+               MaxRequestSize                   int
+               MaxTokenLifetime                 Duration
+               RequestTimeout                   Duration
+               SendTimeout                      Duration
+               WebsocketClientEventQueue        int
+               WebsocketServerEventQueue        int
+               KeepServiceRequestTimeout        Duration
+               VocabularyPath                   string
+               FreezeProjectRequiresDescription bool
+               FreezeProjectRequiresProperties  StringSet
+               UnfreezeProjectRequiresAdmin     bool
        }
        AuditLogs struct {
                MaxAge             Duration
@@ -241,6 +244,7 @@ type Cluster struct {
                UserProfileNotificationAddress        string
                PreferDomainForUsername               string
                UserSetupMailText                     string
+               RoleGroupsVisibleToAll                bool
        }
        StorageClasses map[string]StorageClassConfig
        Volumes        map[string]Volume
@@ -410,6 +414,12 @@ type RemoteCluster struct {
        ActivateUsers bool
 }
 
+type CUDAFeatures struct {
+       DriverVersion      string
+       HardwareCapability string
+       DeviceCount        int
+}
+
 type InstanceType struct {
        Name            string
        ProviderType    string
@@ -420,26 +430,27 @@ type InstanceType struct {
        AddedScratch    ByteSize
        Price           float64
        Preemptible     bool
+       CUDA            CUDAFeatures
 }
 
 type ContainersConfig struct {
-       CloudVMs                    CloudVMsConfig
-       CrunchRunCommand            string
-       CrunchRunArgumentsList      []string
-       DefaultKeepCacheRAM         ByteSize
-       DispatchPrivateKey          string
-       LogReuseDecisions           bool
-       MaxComputeVMs               int
-       MaxDispatchAttempts         int
-       MaxRetryAttempts            int
-       MinRetryPeriod              Duration
-       ReserveExtraRAM             ByteSize
-       StaleLockTimeout            Duration
-       SupportedDockerImageFormats StringSet
-       UsePreemptibleInstances     bool
-       RuntimeEngine               string
-       LocalKeepBlobBuffersPerVCPU int
-       LocalKeepLogsToContainerLog string
+       CloudVMs                      CloudVMsConfig
+       CrunchRunCommand              string
+       CrunchRunArgumentsList        []string
+       DefaultKeepCacheRAM           ByteSize
+       DispatchPrivateKey            string
+       LogReuseDecisions             bool
+       MaxComputeVMs                 int
+       MaxDispatchAttempts           int
+       MaxRetryAttempts              int
+       MinRetryPeriod                Duration
+       ReserveExtraRAM               ByteSize
+       StaleLockTimeout              Duration
+       SupportedDockerImageFormats   StringSet
+       AlwaysUsePreemptibleInstances bool
+       RuntimeEngine                 string
+       LocalKeepBlobBuffersPerVCPU   int
+       LocalKeepLogsToContainerLog   string
 
        JobsAPI struct {
                Enable         string
@@ -478,6 +489,7 @@ type ContainersConfig struct {
        LSF struct {
                BsubSudoUser      string
                BsubArgumentsList []string
+               BsubCUDAArguments []string
        }
 }