X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/75310a63472361ad0a84801024193cc9f34393e0..b30dca66a056bc6ee627bab5956dd8884a0e74aa:/sdk/go/arvados/config.go diff --git a/sdk/go/arvados/config.go b/sdk/go/arvados/config.go index f6b736d587..6ec8f345d7 100644 --- a/sdk/go/arvados/config.go +++ b/sdk/go/arvados/config.go @@ -57,6 +57,15 @@ func (sc *Config) GetCluster(clusterID string) (*Cluster, error) { } } +type WebDAVCacheConfig struct { + TTL Duration + UUIDTTL Duration + MaxBlockEntries int + MaxCollectionEntries int + MaxCollectionBytes int64 + MaxPermissionEntries int + MaxUUIDEntries int +} type Cluster struct { ClusterID string `json:"-"` ManagementToken string @@ -72,6 +81,8 @@ type Cluster struct { DisabledAPIs StringSet MaxIndexDatabaseRead int MaxItemsPerResponse int + MaxConcurrentRequests int + MaxKeepBlobBuffers int MaxRequestAmplification int MaxRequestSize int RailsSessionSecretToken string @@ -79,6 +90,7 @@ type Cluster struct { SendTimeout Duration WebsocketClientEventQueue int WebsocketServerEventQueue int + KeepServiceRequestTimeout Duration } AuditLogs struct { MaxAge Duration @@ -86,13 +98,19 @@ type Cluster struct { UnloggedAttributes StringSet } Collections struct { - BlobSigning bool - BlobSigningKey string - BlobSigningTTL Duration - CollectionVersioning bool - DefaultTrashLifetime Duration - DefaultReplication int - ManagedProperties map[string]struct { + BlobSigning bool + BlobSigningKey string + BlobSigningTTL Duration + BlobTrash bool + BlobTrashLifetime Duration + BlobTrashCheckInterval Duration + BlobTrashConcurrency int + BlobDeleteConcurrency int + BlobReplicateConcurrency int + CollectionVersioning bool + DefaultTrashLifetime Duration + DefaultReplication int + ManagedProperties map[string]struct { Value interface{} Function string Protected bool @@ -100,13 +118,26 @@ type Cluster struct { PreserveVersionIfIdle Duration TrashSweepInterval Duration TrustAllContent bool + + BlobMissingReport string + BalancePeriod Duration + BalanceCollectionBatch int + BalanceCollectionBuffers int + + WebDAVCache WebDAVCacheConfig } Git struct { + GitCommand string + GitoliteHome string Repositories string } Login struct { - ProviderAppSecret string - ProviderAppID string + GoogleClientID string + GoogleClientSecret string + ProviderAppID string + ProviderAppSecret string + LoginCluster string + RemoteTokenRefresh Duration } Mail struct { MailchimpAPIKey string @@ -143,6 +174,7 @@ type Cluster struct { UserNotifierEmailFrom string UserProfileNotificationAddress string } + Volumes map[string]Volume Workbench struct { ActivationContactLink string APIClientConnectTimeout Duration @@ -177,11 +209,55 @@ type Cluster struct { } UserProfileFormMessage string VocabularyURL string + WelcomePageHTML string + InactivePageHTML string } EnableBetaController14287 bool } +type Volume struct { + AccessViaHosts map[URL]VolumeAccess + ReadOnly bool + Replication int + StorageClasses map[string]bool + Driver string + DriverParameters json.RawMessage +} + +type S3VolumeDriverParameters struct { + AccessKey string + SecretKey string + Endpoint string + Region string + Bucket string + LocationConstraint bool + IndexPageSize int + ConnectTimeout Duration + ReadTimeout Duration + RaceWindow Duration + UnsafeDelete bool +} + +type AzureVolumeDriverParameters struct { + StorageAccountName string + StorageAccountKey string + StorageBaseURL string + ContainerName string + RequestTimeout Duration + ListBlobsRetryDelay Duration + ListBlobsMaxAttempts int +} + +type DirectoryVolumeDriverParameters struct { + Root string + Serialize bool +} + +type VolumeAccess struct { + ReadOnly bool +} + type Services struct { Composer Service Controller Service @@ -225,7 +301,13 @@ func (su URL) MarshalText() ([]byte, error) { return []byte(fmt.Sprintf("%s", (*url.URL)(&su).String())), nil } -type ServiceInstance struct{} +func (su URL) String() string { + return (*url.URL)(&su).String() +} + +type ServiceInstance struct { + Rendezvous string `json:",omitempty"` +} type PostgreSQL struct { Connection PostgreSQLConnection @@ -271,13 +353,8 @@ type ContainersConfig struct { UsePreemptibleInstances bool JobsAPI struct { - Enable string - GitInternalDir string - DefaultDockerImage string - CrunchJobWrapper string - CrunchJobUser string - CrunchRefreshTrigger string - ReuseJobIfOutputsDiffer bool + Enable string + GitInternalDir string } Logging struct { MaxAge Duration