Reputation: 3
I need to pass a large string to a workflow - seems that the right way to do it would be using a blob. Will be helpful to have an example of how to do it.
Upvotes: 0
Views: 160
Reputation: 16
From outside a task:
from flytekit.interfaces.data.data_proxy import Data
with open('/tmp/some.file', 'w') as w:
w.write("Me iz a big string......... x100000000")
Data.put_data('/tmp/some.file', 's3://some/location')
your_launch_plan.execute('project', 'domain', inputs={'string_blob': 's3://some/location'})
If you're inside a task, you have a context which allows operating on files in a scratch space, so simply:
my_big_string_blob = Types.Blob()
with my_big_string_blob as w:
w.write("Me iz a big string......... x100000000")
Upvotes: 0