14812: Fix lib/config tests
[arvados.git] / lib / config / config.default.yml
index 94cd8fcbf65d2181c918818f7ba4779408b281a0..f17c13d2a97da69802ac1a25e5cbce473cf65198 100644 (file)
@@ -35,11 +35,13 @@ Clusters:
         InternalURLs: {}
         ExternalURL: ""
       GitSSH:
+        InternalURLs: {}
         ExternalURL: ""
       DispatchCloud:
         InternalURLs: {}
         ExternalURL: "-"
       SSO:
+        InternalURLs: {}
         ExternalURL: ""
       Keepproxy:
         InternalURLs: {}
@@ -54,13 +56,24 @@ Clusters:
         InternalURLs: {}
         ExternalURL: "-"
       Composer:
+        InternalURLs: {}
         ExternalURL: ""
       WebShell:
+        InternalURLs: {}
+        # ShellInABox service endpoint URL for a given VM.  If empty, do not
+        # offer web shell logins.
+        #
+        # E.g., using a path-based proxy server to forward connections to shell hosts:
+        # https://webshell.uuid_prefix.arvadosapi.com
+        #
+        # E.g., using a name-based proxy server to forward connections to shell hosts:
+        # https://*.webshell.uuid_prefix.arvadosapi.com
         ExternalURL: ""
       Workbench1:
         InternalURLs: {}
         ExternalURL: ""
       Workbench2:
+        InternalURLs: {}
         ExternalURL: ""
       Nodemanager:
         InternalURLs: {}
@@ -113,7 +126,7 @@ Clusters:
       # Interval (seconds) between asynchronous permission view updates. Any
       # permission-updating API called with the 'async' parameter schedules a an
       # update on the permission view in the future, if not already scheduled.
-      AsyncPermissionsUpdateInterval: 20
+      AsyncPermissionsUpdateInterval: 20s
 
       # Maximum number of concurrent outgoing requests to make while
       # serving a single incoming multi-cluster (federated) request.
@@ -165,6 +178,11 @@ Clusters:
       NewUserNotificationRecipients: []
       NewInactiveUserNotificationRecipients: []
 
+      # Set anonymous_user_token to enable anonymous user access. You can get
+      # the token by running "bundle exec ./script/get_anonymous_user_token.rb"
+      # in the directory where your API server is running.
+      AnonymousUserToken: ""
+
     AuditLogs:
       # Time to keep audit logs, in seconds. (An audit log is a row added
       # to the "logs" table in the PostgreSQL database each time an
@@ -260,7 +278,7 @@ Clusters:
       # Interval (seconds) between trash sweeps. During a trash sweep,
       # collections are marked as trash if their trash_at time has
       # arrived, and deleted if their delete_at time has arrived.
-      TrashSweepInterval: 60
+      TrashSweepInterval: 60s
 
       # If true, enable collection versioning.
       # When a collection's preserve_version field is true or the current version
@@ -269,10 +287,24 @@ Clusters:
       # the current collection.
       CollectionVersioning: false
 
-      #   0 = auto-create a new version on every update.
-      #  -1 = never auto-create new versions.
-      # > 0 = auto-create a new version when older than the specified number of seconds.
-      PreserveVersionIfIdle: -1
+      #   0s = auto-create a new version on every update.
+      #  -1s = never auto-create new versions.
+      # > 0s = auto-create a new version when older than the specified number of seconds.
+      PreserveVersionIfIdle: -1s
+
+      # Managed collection properties. At creation time, if the client didn't
+      # provide the listed keys, they will be automatically populated following
+      # one of the following behaviors:
+      #
+      # * UUID of the user who owns the containing project.
+      #   responsible_person_uuid: {Function: original_owner, Protected: true}
+      #
+      # * Default concrete value.
+      #   foo_bar: {Value: baz, Protected: false}
+      #
+      # If Protected is true, only an admin user can modify its value.
+      ManagedProperties:
+        SAMPLE: {Function: original_owner, Protected: true}
 
     Login:
       # These settings are provided by your OAuth2 provider (e.g.,
@@ -336,12 +368,6 @@ Clusters:
       # scheduling parameter parameter set.
       UsePreemptibleInstances: false
 
-      # Include details about job reuse decisions in the server log. This
-      # causes additional database queries to run, so it should not be
-      # enabled unless you expect to examine the resulting logs for
-      # troubleshooting purposes.
-      LogReuseDecisions: false
-
       # PEM encoded SSH key (RSA, DSA, or ECDSA) used by the
       # (experimental) cloud dispatcher for executing containers on
       # worker VMs. Begins with "-----BEGIN RSA PRIVATE KEY-----\n"
@@ -366,8 +392,8 @@ Clusters:
         LogBytesPerEvent: 4096
         LogSecondsBetweenEvents: 1
 
-        # The sample period for throttling logs, in seconds.
-        LogThrottlePeriod: 60
+        # The sample period for throttling logs.
+        LogThrottlePeriod: 60s
 
         # Maximum number of bytes that job can log over crunch_log_throttle_period
         # before being silenced until the end of the period.
@@ -381,18 +407,18 @@ Clusters:
         # silenced by throttling are not counted against this total.
         LimitLogBytesPerJob: 67108864
 
-        LogPartialLineThrottlePeriod: 5
+        LogPartialLineThrottlePeriod: 5s
 
-        # Container logs are written to Keep and saved in a collection,
-        # which is updated periodically while the container runs.  This
-        # value sets the interval (given in seconds) between collection
-        # updates.
-        LogUpdatePeriod: 1800
+        # Container logs are written to Keep and saved in a
+        # collection, which is updated periodically while the
+        # container runs.  This value sets the interval between
+        # collection updates.
+        LogUpdatePeriod: 30m
 
         # The log collection is also updated when the specified amount of
         # log data (given in bytes) is produced in less than one update
         # period.
-        LogUpdateSize: 33554432
+        LogUpdateSize: 32MiB
 
       SLURM:
         Managed:
@@ -487,7 +513,7 @@ Clusters:
         # Shell command to execute on each worker to determine whether
         # the worker is booted and ready to run containers. It should
         # exit zero if the worker is ready.
-        BootProbeCommand: "docker ps"
+        BootProbeCommand: "docker ps -q"
 
         # Minimum interval between consecutive probes to a single
         # worker.
@@ -528,7 +554,7 @@ Clusters:
         TimeoutShutdown: 10s
 
         # Worker VM image ID.
-        ImageID: ami-01234567890abcdef
+        ImageID: ""
 
         # Tags to add on all resources (VMs, NICs, disks) created by
         # the container dispatcher. (Arvados's own tags --
@@ -600,7 +626,7 @@ Clusters:
     Mail:
       MailchimpAPIKey: ""
       MailchimpListID: ""
-      SendUserSetupNotificationEmail: ""
+      SendUserSetupNotificationEmail: true
       IssueReporterEmailFrom: ""
       IssueReporterEmailTo: ""
       SupportEmailAddress: ""
@@ -613,8 +639,89 @@ Clusters:
         Insecure: false
         ActivateUsers: false
       SAMPLE:
+        # API endpoint host or host:port; default is {id}.arvadosapi.com
         Host: sample.arvadosapi.com
+
+        # Perform a proxy request when a local client requests an
+        # object belonging to this remote.
         Proxy: false
+
+        # Default "https". Can be set to "http" for testing.
         Scheme: https
+
+        # Disable TLS verify. Can be set to true for testing.
         Insecure: false
+
+        # When users present tokens issued by this remote cluster, and
+        # their accounts are active on the remote cluster, activate
+        # them on this cluster too.
         ActivateUsers: false
+
+    Workbench:
+      # Workbench1 configs
+      Theme: default
+      ActivationContactLink: mailto:info@arvados.org
+      ArvadosDocsite: https://doc.arvados.org
+      ArvadosPublicDataDocURL: https://playground.arvados.org/projects/public
+      ShowUserAgreementInline: false
+      SecretKeyBase: ""
+      RepositoryCache: /var/www/arvados-workbench/current/tmp/git
+      UserProfileFormFields: {}
+          # exampleTextValue:  # key that will be set in properties
+          #   Type: text  #
+          #   FormFieldTitle: ""
+          #   FormFieldDescription: ""
+          #   Required: true
+          #   Position: 1
+          # exampleOptionsValue:
+          #   Type: select
+          #   FormFieldTitle: ""
+          #   FormFieldDescription: ""
+          #   Required: true
+          #   Position: 1
+          #   Options:
+          #     red: {}
+          #     blue: {}
+          #     yellow: {}
+      UserProfileFormMessage: 'Welcome to Arvados. All <span style="color:red">required fields</span> must be completed before you can proceed.'
+
+      # Mimetypes of applications for which the view icon
+      # would be enabled in a collection's show page.
+      # It is sufficient to list only applications here.
+      # No need to list text and image types.
+      ApplicationMimetypesWithViewIcon:
+        cwl: {}
+        fasta: {}
+        go: {}
+        javascript: {}
+        json: {}
+        pdf: {}
+        python: {}
+        x-python: {}
+        r: {}
+        rtf: {}
+        sam: {}
+        x-sh: {}
+        vnd.realvnc.bed: {}
+        xml: {}
+        xsl: {}
+      LogViewerMaxBytes: 1M
+      EnablePublicProjectsPage: true
+      EnableGettingStartedPopup: false
+      APIResponseCompression: true
+      APIClientConnectTimeout: 2m
+      APIClientReceiveTimeout: 5m
+      RunningJobLogRecordsToFetch: 2000
+      ShowRecentCollectionsOnDashboard: true
+      ShowUserNotifications: true
+      MultiSiteSearch: ""
+      Repositories: true
+      SiteName: Arvados Workbench
+      TrustAllContent: false
+
+      # Workbench2 configs
+      VocabularyURL: ""
+      FileViewersConfigURL: ""
+
+    # Use experimental controller code (see https://dev.arvados.org/issues/14287)
+    EnableBetaController14287: false