class_docstr: Base class which is used to run submissions.
class_docstr_tok: ["Base","class","which","is","used","to","run","submissions","."]
docstr: Runs docker command without time limit.
  
  Args:
    cmd: list with the command line arguments which are passed to docker
      binary
  
  Returns:
    how long it took to run submission in seconds
  
  Raises:
    WorkerError: if error occurred during execution of the submission
docstr_tok: ["Runs","docker","command","without","time","limit",".","Args",":","cmd",":","list","with","the","command","line","arguments","which","are","passed","to","docker","binary","Returns",":","how","long","it","took","to","run","submission","in","seconds","Raises",":","WorkerError",":","if","error","occurred","during","execution","of","the","submission"]
code: def run_without_time_limit(self, cmd):
      """Runs docker command without time limit.
  
      Args:
        cmd: list with the command line arguments which are passed to docker
          binary
  
      Returns:
        how long it took to run submission in seconds
  
      Raises:
        WorkerError: if error occurred during execution of the submission
      """
      cmd = [DOCKER_BINARY, "run", DOCKER_NVIDIA_RUNTIME] + cmd
      logging.info("Docker command: %s", " ".join(cmd))
      start_time = time.time()
      retval = subprocess.call(cmd)
      elapsed_time_sec = int(time.time() - start_time)
      logging.info("Elapsed time of attack: %d", elapsed_time_sec)
      logging.info("Docker retval: %d", retval)
      if retval != 0:
          logging.warning("Docker returned non-zero retval: %d", retval)
          raise WorkerError(
              "Docker returned non-zero retval " + str(retval)
          )
      return elapsed_time_sec
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from builtins import int
  import argparse
  import json
  import logging
  import os
  import random
  import shutil
  import subprocess
  import time
  import uuid
  from six import iteritems
  import eval_lib
  from cleverhans.utils import shell_call
label_desc: Use image node_id 4 for calling the ExecutableSubmission obj's underlying member method code with example usage: obj.run_without_time_limit(cmd) and returns: elapsed_time_sec