X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/22e3ec0b8647ba1236d1f0e0cd55dcdb4cca7702..f5162efc3578d0420e869e3fcbda46454a855909:/sdk/go/arvados/config.go?ds=sidebyside diff --git a/sdk/go/arvados/config.go b/sdk/go/arvados/config.go index 00438bf340..9e7eb521ee 100644 --- a/sdk/go/arvados/config.go +++ b/sdk/go/arvados/config.go @@ -49,12 +49,12 @@ func (sc *Config) GetCluster(clusterID string) (*Cluster, error) { } } } - if cc, ok := sc.Clusters[clusterID]; !ok { + cc, ok := sc.Clusters[clusterID] + if !ok { return nil, fmt.Errorf("cluster %q is not configured", clusterID) - } else { - cc.ClusterID = clusterID - return &cc, nil } + cc.ClusterID = clusterID + return &cc, nil } type WebDAVCacheConfig struct { @@ -65,6 +65,17 @@ type WebDAVCacheConfig struct { MaxCollectionBytes int64 MaxPermissionEntries int MaxUUIDEntries int + MaxSessions int +} + +type UploadDownloadPermission struct { + Upload bool + Download bool +} + +type UploadDownloadRolePermissions struct { + User UploadDownloadPermission + Admin UploadDownloadPermission } type Cluster struct { @@ -86,7 +97,7 @@ type Cluster struct { MaxKeepBlobBuffers int MaxRequestAmplification int MaxRequestSize int - RailsSessionSecretToken string + MaxTokenLifetime Duration RequestTimeout Duration SendTimeout Duration WebsocketClientEventQueue int @@ -127,8 +138,13 @@ type Cluster struct { BalanceCollectionBatch int BalanceCollectionBuffers int BalanceTimeout Duration + BalanceUpdateLimit int WebDAVCache WebDAVCacheConfig + + KeepproxyPermission UploadDownloadRolePermissions + WebDAVPermission UploadDownloadRolePermissions + WebDAVLogEvents bool } Git struct { GitCommand string @@ -152,30 +168,29 @@ type Cluster struct { UsernameAttribute string } Google struct { - Enable bool - ClientID string - ClientSecret string - AlternateEmailAddresses bool + Enable bool + ClientID string + ClientSecret string + AlternateEmailAddresses bool + AuthenticationRequestParameters map[string]string } OpenIDConnect struct { - Enable bool - Issuer string - ClientID string - ClientSecret string - EmailClaim string - EmailVerifiedClaim string - UsernameClaim string + Enable bool + Issuer string + ClientID string + ClientSecret string + EmailClaim string + EmailVerifiedClaim string + UsernameClaim string + AcceptAccessToken bool + AcceptAccessTokenScope string + AuthenticationRequestParameters map[string]string } PAM struct { Enable bool Service string DefaultEmailDomain string } - SSO struct { - Enable bool - ProviderAppID string - ProviderAppSecret string - } Test struct { Enable bool Users map[string]TestUser @@ -183,6 +198,8 @@ type Cluster struct { LoginCluster string RemoteTokenRefresh Duration TokenLifetime Duration + TrustedClients map[string]struct{} + IssueTrustedTokens bool } Mail struct { MailchimpAPIKey string @@ -262,8 +279,6 @@ type Cluster struct { SSHHelpHostSuffix string IdleTimeout Duration } - - ForceLegacyAPI14 bool } type Volume struct { @@ -277,8 +292,8 @@ type Volume struct { type S3VolumeDriverParameters struct { IAMRole string - AccessKey string - SecretKey string + AccessKeyID string + SecretAccessKey string Endpoint string Region string Bucket string @@ -315,6 +330,7 @@ type Services struct { Composer Service Controller Service DispatchCloud Service + DispatchLSF Service GitHTTP Service GitSSH Service Health Service @@ -322,7 +338,6 @@ type Services struct { Keepproxy Service Keepstore Service RailsAPI Service - SSO Service WebDAVDownload Service WebDAV Service WebShell Service @@ -412,6 +427,7 @@ type ContainersConfig struct { StaleLockTimeout Duration SupportedDockerImageFormats StringSet UsePreemptibleInstances bool + RuntimeEngine string JobsAPI struct { Enable string @@ -429,6 +445,10 @@ type ContainersConfig struct { LogUpdatePeriod Duration LogUpdateSize ByteSize } + ShellAccess struct { + Admin bool + User bool + } SLURM struct { PrioritySpread int64 SbatchArgumentsList []string @@ -443,6 +463,10 @@ type ContainersConfig struct { AssignNodeHostname string } } + LSF struct { + BsubSudoUser string + BsubArgumentsList []string + } } type CloudVMsConfig struct { @@ -579,6 +603,7 @@ const ( ServiceNameRailsAPI ServiceName = "arvados-api-server" ServiceNameController ServiceName = "arvados-controller" ServiceNameDispatchCloud ServiceName = "arvados-dispatch-cloud" + ServiceNameDispatchLSF ServiceName = "arvados-dispatch-lsf" ServiceNameHealth ServiceName = "arvados-health" ServiceNameWorkbench1 ServiceName = "arvados-workbench1" ServiceNameWorkbench2 ServiceName = "arvados-workbench2" @@ -596,6 +621,7 @@ func (svcs Services) Map() map[ServiceName]Service { ServiceNameRailsAPI: svcs.RailsAPI, ServiceNameController: svcs.Controller, ServiceNameDispatchCloud: svcs.DispatchCloud, + ServiceNameDispatchLSF: svcs.DispatchLSF, ServiceNameHealth: svcs.Health, ServiceNameWorkbench1: svcs.Workbench1, ServiceNameWorkbench2: svcs.Workbench2,