+ for k,v in job_spec["script_parameters"].items():
+ if v is False or v is None or isinstance(v, dict):
+ job_spec["script_parameters"][k] = {"value": v}
+
+ del job_spec["owner_uuid"]
+ job_spec["job"] = job
+ self.arvrunner.pipeline = self.arvrunner.api.pipeline_instances().create(
+ body={
+ "owner_uuid": self.arvrunner.project_uuid,
+ "name": self.name,
+ "components": {"cwl-runner": job_spec },
+ "state": "RunningOnServer"}).execute(num_retries=self.arvrunner.num_retries)
+ logger.info("Created pipeline %s", self.arvrunner.pipeline["uuid"])
+
+ if kwargs.get("wait") is False:
+ self.uuid = self.arvrunner.pipeline["uuid"]
+ return
+
+ self.uuid = job["uuid"]