[ARVADOS] updated: 00ef3e9dc7240a5ce5bd94d1a358120fa5a35835

git at public.curoverse.com git at public.curoverse.com
Wed Dec 2 16:46:46 EST 2015


Summary of changes:
 sdk/cli/bin/crunch-job              | 6 ++++--
 services/api/lib/crunch_dispatch.rb | 5 +++++
 2 files changed, 9 insertions(+), 2 deletions(-)

       via  00ef3e9dc7240a5ce5bd94d1a358120fa5a35835 (commit)
       via  d03f44d2d2c93841a50cbfca1a74600bc504b593 (commit)
      from  aa0414614096795eda8b58c414d0d2b15e063c70 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit 00ef3e9dc7240a5ce5bd94d1a358120fa5a35835
Merge: aa04146 d03f44d
Author: Tom Clegg <tom at curoverse.com>
Date:   Wed Dec 2 16:56:40 2015 -0500

    Merge branch '7868-docker-run-args' closes #7868


commit d03f44d2d2c93841a50cbfca1a74600bc504b593
Author: Tom Clegg <tom at curoverse.com>
Date:   Wed Nov 25 17:53:14 2015 -0500

    7868: Allow admin to add arguments to "docker run" commands.

diff --git a/sdk/cli/bin/crunch-job b/sdk/cli/bin/crunch-job
index fca1247..b9365fe 100755
--- a/sdk/cli/bin/crunch-job
+++ b/sdk/cli/bin/crunch-job
@@ -127,6 +127,7 @@ my $job_api_token;
 my $no_clear_tmp;
 my $resume_stash;
 my $docker_bin = "docker.io";
+my $docker_run_args = "";
 GetOptions('force-unlock' => \$force_unlock,
            'git-dir=s' => \$git_dir,
            'job=s' => \$jobspec,
@@ -134,6 +135,7 @@ GetOptions('force-unlock' => \$force_unlock,
            'no-clear-tmp' => \$no_clear_tmp,
            'resume-stash=s' => \$resume_stash,
            'docker-bin=s' => \$docker_bin,
+           'docker-run-args=s' => \$docker_run_args,
     );
 
 if (defined $job_api_token) {
@@ -467,7 +469,7 @@ fi
     }
     srun(["srun", "--nodelist=" . $node[0]],
          ["/bin/sh", "-ec",
-          "a=`$docker_bin run $try_user_arg $docker_hash id --user` && " .
+          "a=`$docker_bin run $docker_run_args $try_user_arg $docker_hash id --user` && " .
           " test \$a -ne 0"],
          {fork => 1});
     if ($? == 0) {
@@ -907,7 +909,7 @@ for (my $todo_ptr = 0; $todo_ptr <= $#jobstep_todo; $todo_ptr ++)
       my $containername = "$Jobstep->{arvados_task}->{uuid}-$Jobstep->{failures}";
       my $cidfile = "$ENV{CRUNCH_TMP}/$containername.cid";
       $command .= "crunchstat -cgroup-root=/sys/fs/cgroup -cgroup-parent=docker -cgroup-cid=$cidfile -poll=10000 ";
-      $command .= "$docker_bin run --name=$containername --attach=stdout --attach=stderr --attach=stdin -i \Q$dockeruserarg\E --cidfile=$cidfile --sig-proxy ";
+      $command .= "$docker_bin run $docker_run_args --name=$containername --attach=stdout --attach=stderr --attach=stdin -i \Q$dockeruserarg\E --cidfile=$cidfile --sig-proxy ";
       # We only set memory limits if Docker lets us limit both memory and swap.
       # Memory limits alone have been supported longer, but subprocesses tend
       # to get SIGKILL if they exceed that without any swap limit set.
diff --git a/services/api/lib/crunch_dispatch.rb b/services/api/lib/crunch_dispatch.rb
index 858bb67..5d598d4 100644
--- a/services/api/lib/crunch_dispatch.rb
+++ b/services/api/lib/crunch_dispatch.rb
@@ -22,6 +22,7 @@ class CrunchDispatch
     end
 
     @docker_bin = ENV['CRUNCH_JOB_DOCKER_BIN']
+    @docker_run_args = ENV['CRUNCH_JOB_DOCKER_RUN_ARGS']
 
     @arvados_internal = Rails.configuration.git_internal_dir
     if not File.exists? @arvados_internal
@@ -395,6 +396,10 @@ class CrunchDispatch
         cmd_args += ['--docker-bin', @docker_bin]
       end
 
+      if @docker_run_args
+        cmd_args += ['--docker-run-args', @docker_run_args]
+      end
+
       if have_job_lock?(job)
         cmd_args << "--force-unlock"
       end

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list