Merge branch '19847-cwl-disk-cache-size' refs #19847
authorPeter Amstutz <peter.amstutz@curii.com>
Wed, 14 Dec 2022 20:48:53 +0000 (15:48 -0500)
committerPeter Amstutz <peter.amstutz@curii.com>
Wed, 14 Dec 2022 20:48:53 +0000 (15:48 -0500)
Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <peter.amstutz@curii.com>

1  2 
lib/config/config.default.yml
lib/config/export.go
sdk/cwl/arvados_cwl/__init__.py
sdk/go/arvados/config.go

index 71d180b0e7ad09bb0c399fae3d2c8ac1d0b37a99,e57bb7fb9474efd2f1603feb381d024429c94a9f..2d9119adfc747c2a937a39405dac88638ce5b5bb
@@@ -373,12 -373,6 +373,12 @@@ Clusters
        # cluster.
        RoleGroupsVisibleToAll: true
  
 +      # If CanCreateRoleGroups is true, regular (non-admin) users can
 +      # create new role groups.
 +      #
 +      # If false, only admins can create new role groups.
 +      CanCreateRoleGroups: true
 +
        # During each period, a log entry with event_type="activity"
        # will be recorded for each user who is active during that
        # period. The object_uuid attribute will indicate the user's
  
        # Default value for keep_cache_ram of a container's
        # runtime_constraints.  Note: this gets added to the RAM request
-       # used to allocate a VM or submit an HPC job
+       # used to allocate a VM or submit an HPC job.
+       #
+       # If this is zero, container requests that don't specify RAM or
+       # disk cache size will use a disk cache, sized to the
+       # container's RAM requirement (but with minimum 2 GiB and
+       # maximum 32 GiB).
        DefaultKeepCacheRAM: 0
  
-       # Default value for keep_cache_disk of a container's
-       # runtime_constraints.  Note: this gets added to the disk
-       # request used to allocate a VM or submit an HPC job
-       DefaultKeepCacheDisk: 8589934592
        # Number of times a container can be unlocked before being
        # automatically cancelled.
        MaxDispatchAttempts: 5
diff --combined lib/config/export.go
index 8b7a1749005864a917afd7f2aa6334c6d5c9c6af,6352406e90e95dc255d9eb43ff1ca13f0e721fd1..069e300c5b4d0f6eb72175a6d311670ab5fa9fd4
@@@ -121,7 -121,6 +121,6 @@@ var whitelist = map[string]bool
        "Containers.CrunchRunArgumentsList":        false,
        "Containers.CrunchRunCommand":              false,
        "Containers.DefaultKeepCacheRAM":           true,
-       "Containers.DefaultKeepCacheDisk":          true,
        "Containers.DispatchPrivateKey":            false,
        "Containers.JobsAPI":                       true,
        "Containers.JobsAPI.Enable":                true,
        "Users.AutoSetupNewUsersWithRepository":               false,
        "Users.AutoSetupNewUsersWithVmUUID":                   false,
        "Users.AutoSetupUsernameBlacklist":                    false,
 +      "Users.CanCreateRoleGroups":                           true,
        "Users.EmailSubjectPrefix":                            false,
        "Users.NewInactiveUserNotificationRecipients":         false,
        "Users.NewUserNotificationRecipients":                 false,
index 1b0e1ea8ef691e4ec32316af8cd29d9eec3aba47,9135ff674b3c04d5ef06708eb76b67cf8d737e65..7818ac84f44e0646e09ebc25c940899ec4240695
@@@ -280,6 -280,7 +280,7 @@@ def add_arv_hints()
          "http://commonwl.org/cwltool#CUDARequirement",
          "http://arvados.org/cwl#UsePreemptible",
          "http://arvados.org/cwl#OutputCollectionProperties",
+         "http://arvados.org/cwl#KeepCacheTypeRequirement",
      ])
  
  def exit_signal_handler(sigcode, frame):
@@@ -328,9 -329,7 +329,9 @@@ def main(args=sys.argv[1:]
          if api_client is None:
              api_client = arvados.safeapi.ThreadSafeApiCache(
                  api_params={"model": OrderedJsonModel(), "timeout": arvargs.http_timeout},
 -                keep_params={"num_retries": 4})
 +                keep_params={"num_retries": 4},
 +                version='v1',
 +            )
              keep_client = api_client.keep
              # Make an API object now so errors are reported early.
              api_client.users().current().execute()
diff --combined sdk/go/arvados/config.go
index bfcc73f6f12886c6549c3e4a865231ed78724fad,2871356e9827059352026432082c5fcdee2f3fce..fbbcb78ec2991b00aca4f4b2f4e94fb7ac209760
@@@ -249,7 -249,6 +249,7 @@@ type Cluster struct 
                PreferDomainForUsername               string
                UserSetupMailText                     string
                RoleGroupsVisibleToAll                bool
 +              CanCreateRoleGroups                   bool
                ActivityLoggingPeriod                 Duration
        }
        StorageClasses map[string]StorageClassConfig
@@@ -448,7 -447,6 +448,6 @@@ type ContainersConfig struct 
        CrunchRunCommand              string
        CrunchRunArgumentsList        []string
        DefaultKeepCacheRAM           ByteSize
-       DefaultKeepCacheDisk          ByteSize
        DispatchPrivateKey            string
        LogReuseDecisions             bool
        MaxComputeVMs                 int