arvados.crunch
1# Copyright (C) The Arvados Authors. All rights reserved. 2# 3# SPDX-License-Identifier: Apache-2.0 4 5import json 6import os 7 8from . import util 9 10class TaskOutputDir(object): 11 """Keep-backed directory for staging outputs of Crunch tasks. 12 13 Example, in a crunch task whose output is a file called "out.txt" 14 containing "42": 15 16 import arvados 17 import arvados.crunch 18 import os 19 20 out = arvados.crunch.TaskOutputDir() 21 with open(os.path.join(out.path, 'out.txt'), 'w') as f: 22 f.write('42') 23 arvados.current_task().set_output(out.manifest_text()) 24 """ 25 @util._deprecated('3.0', 'arvados-cwl-runner or the containers API') 26 def __init__(self): 27 self.path = os.environ['TASK_KEEPMOUNT_TMP'] 28 29 def __str__(self): 30 return self.path 31 32 def manifest_text(self): 33 snapshot = os.path.join(self.path, '.arvados#collection') 34 return json.load(open(snapshot))['manifest_text']
class
TaskOutputDir:
11class TaskOutputDir(object): 12 """Keep-backed directory for staging outputs of Crunch tasks. 13 14 Example, in a crunch task whose output is a file called "out.txt" 15 containing "42": 16 17 import arvados 18 import arvados.crunch 19 import os 20 21 out = arvados.crunch.TaskOutputDir() 22 with open(os.path.join(out.path, 'out.txt'), 'w') as f: 23 f.write('42') 24 arvados.current_task().set_output(out.manifest_text()) 25 """ 26 @util._deprecated('3.0', 'arvados-cwl-runner or the containers API') 27 def __init__(self): 28 self.path = os.environ['TASK_KEEPMOUNT_TMP'] 29 30 def __str__(self): 31 return self.path 32 33 def manifest_text(self): 34 snapshot = os.path.join(self.path, '.arvados#collection') 35 return json.load(open(snapshot))['manifest_text']
Keep-backed directory for staging outputs of Crunch tasks.
Example, in a crunch task whose output is a file called “out.txt” containing “42":
import arvados
import arvados.crunch
import os
out = TaskOutputDir()
with open(os.path.join(out.path, 'out.txt'), 'w') as f:
f.write('42')
arvados.current_task().set_output(out.manifest_text())