X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/e2d623bd4c686100772924b2b15ab808bbb147d0..2f9bf6a10794b03b6cb7556c562ef9f08cb9bec4:/sdk/go/arvados/config.go diff --git a/sdk/go/arvados/config.go b/sdk/go/arvados/config.go index 394e30a737..6e59828a3c 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 @@ -129,6 +140,10 @@ type Cluster struct { BalanceTimeout Duration WebDAVCache WebDAVCacheConfig + + KeepproxyPermission UploadDownloadRolePermissions + WebDAVPermission UploadDownloadRolePermissions + WebDAVLogEvents bool } Git struct { GitCommand string @@ -152,30 +167,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 +197,8 @@ type Cluster struct { LoginCluster string RemoteTokenRefresh Duration TokenLifetime Duration + TrustedClients map[string]struct{} + IssueTrustedTokens bool } Mail struct { MailchimpAPIKey string @@ -219,6 +235,7 @@ type Cluster struct { UserNotifierEmailFrom string UserProfileNotificationAddress string PreferDomainForUsername string + UserSetupMailText string } Volumes map[string]Volume Workbench struct { @@ -261,8 +278,6 @@ type Cluster struct { SSHHelpHostSuffix string IdleTimeout Duration } - - ForceLegacyAPI14 bool } type Volume struct { @@ -276,8 +291,8 @@ type Volume struct { type S3VolumeDriverParameters struct { IAMRole string - AccessKey string - SecretKey string + AccessKeyID string + SecretAccessKey string Endpoint string Region string Bucket string @@ -321,7 +336,6 @@ type Services struct { Keepproxy Service Keepstore Service RailsAPI Service - SSO Service WebDAVDownload Service WebDAV Service WebShell Service @@ -411,6 +425,7 @@ type ContainersConfig struct { StaleLockTimeout Duration SupportedDockerImageFormats StringSet UsePreemptibleInstances bool + RuntimeEngine string JobsAPI struct { Enable string @@ -428,6 +443,10 @@ type ContainersConfig struct { LogUpdatePeriod Duration LogUpdateSize ByteSize } + ShellAccess struct { + Admin bool + User bool + } SLURM struct { PrioritySpread int64 SbatchArgumentsList []string