def submit(self,
               workflow_uuid='',
               experiment='',
               image='',
               cmd='',
               prettified_cmd='',
               workflow_workspace='',
               job_name='',
               cvmfs_mounts='false'):
        """Submit a job to RJC API.

        :param name: Name of the job.
        :param experiment: Experiment the job belongs to.
        :param image: Identifier of the Docker image which will run the job.
        :param cmd: String which represents the command to execute. It can be
            modified by the workflow engine i.e. prepending ``cd /some/dir/``.
        :prettified_cmd: Original command submitted by the user.
        :workflow_workspace: Path to the workspace of the workflow.
        :cvmfs_mounts: String with CVMFS volumes to mount in job pods.
        :return: Returns a dict with the ``job_id``.
        """
        job_spec = {
            'experiment': experiment,
            'docker_img': image,
            'cmd': cmd,
            'prettified_cmd': prettified_cmd,
            'env_vars': {},
            'workflow_workspace': workflow_workspace,
            'job_name': job_name,
            'cvmfs_mounts': cvmfs_mounts,
            'workflow_uuid': workflow_uuid
        }

        response, http_response = self._client.jobs.create_job(job=job_spec).\
            result()
        if http_response.status_code == 400:
            raise HTTPBadRequest('Bad request to create a job. Error: {}'.
                                 format(http_response.data))
        elif http_response.status_code == 500:
            raise HTTPInternalServerError('Internal Server Error. Error: {}'.
                                          format(http_response.data))
        return response
def submit ( self , workflow_uuid = '' , experiment = '' , image = '' , cmd = '' , prettified_cmd = '' , workflow_workspace = '' , job_name = '' , cvmfs_mounts = 'false' ) : job_spec = { 'experiment' : experiment , 'docker_img' : image , 'cmd' : cmd , 'prettified_cmd' : prettified_cmd , 'env_vars' : { } , 'workflow_workspace' : workflow_workspace , 'job_name' : job_name , 'cvmfs_mounts' : cvmfs_mounts , 'workflow_uuid' : workflow_uuid } response , http_response = self . _client . jobs . create_job ( job = job_spec ) . result ( ) if http_response . status_code == 400 : raise HTTPBadRequest ( 'Bad request to create a job. Error: {}' . format ( http_response . data ) ) elif http_response . status_code == 500 : raise HTTPInternalServerError ( 'Internal Server Error. Error: {}' . format ( http_response . data ) ) return response
Submit a job to RJC API.

        :param name: Name of the job.
        :param experiment: Experiment the job belongs to.
        :param image: Identifier of the Docker image which will run the job.
        :param cmd: String which represents the command to execute. It can be
            modified by the workflow engine i.e. prepending ``cd /some/dir/``.
        :prettified_cmd: Original command submitted by the user.
        :workflow_workspace: Path to the workspace of the workflow.
        :cvmfs_mounts: String with CVMFS volumes to mount in job pods.
        :return: Returns a dict with the ``job_id``.