From a94d47683246b9c91a4c590709400ea8a21d1d0d Mon Sep 17 00:00:00 2001 From: Jeremy Bernard Date: Wed, 8 Oct 2025 15:40:36 +0200 Subject: [PATCH 1/2] feat: support several datasets for bulk processing --- cloud-computing/src/app.py | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/cloud-computing/src/app.py b/cloud-computing/src/app.py index ed2e30f..d077799 100644 --- a/cloud-computing/src/app.py +++ b/cloud-computing/src/app.py @@ -17,6 +17,18 @@ def do_some_computation(): art = Figlet().renderText(greeting) return art + greeting +def do_bulk_processing(): + iexec_in = os.environ['IEXEC_IN'] + bulk_slice_size = os.environ['IEXEC_BULK_SLICE_SIZE'] + text = '' + for i in range(int(bulk_slice_size)): + iexec_dataset_filename = os.environ['IEXEC_DATASET_' + str(i + 1) + '_FILENAME'] + iexec_dataset_filepath = f'{iexec_in}/{iexec_dataset_filename}' + text += f'\nDataset ({iexec_dataset_filepath}): ' + if os.path.isfile(iexec_dataset_filepath): + with open(iexec_dataset_filepath) as f: + text += f.read() + return text def handle_dataset(): """ @@ -33,7 +45,7 @@ def handle_dataset(): text = f'\nDataset ({dataset_filepath}): ' if os.path.isfile(dataset_filepath): with open(dataset_filepath) as f: - text = text + f.read() + text += f.read() return text @@ -120,10 +132,16 @@ def save_result(text): if __name__ == '__main__': + result = '' computation_text = do_some_computation() print(computation_text) + result += computation_text + if 'BULK_SIZE' in os.environ: + bulk_dataset_text = do_bulk_processing() + result += bulk_dataset_text dataset_text = handle_dataset() print(dataset_text) + result += dataset_text input_files_text = handle_input_files() print(input_files_text) app_developer_secrets_text = handle_app_developer_secrets() @@ -131,9 +149,7 @@ def save_result(text): requester_secrets_text = handle_requester_secrets() print(requester_secrets_text) write_stderr() - result = f'{computation_text}\n' \ - f'{dataset_text}\n' \ - f'{input_files_text}\n' \ + result += f'{input_files_text}\n' \ f'{app_developer_secrets_text}\n' \ f'{requester_secrets_text}\n' save_result(result) From 88a775db7c7a51be4906badcec27aa79a8bc4b94 Mon Sep 17 00:00:00 2001 From: Jeremy Bernard Date: Thu, 9 Oct 2025 08:26:17 +0200 Subject: [PATCH 2/2] fix: wrong bulk-processing environment variable name --- cloud-computing/src/app.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cloud-computing/src/app.py b/cloud-computing/src/app.py index d077799..8aeb33b 100644 --- a/cloud-computing/src/app.py +++ b/cloud-computing/src/app.py @@ -28,6 +28,7 @@ def do_bulk_processing(): if os.path.isfile(iexec_dataset_filepath): with open(iexec_dataset_filepath) as f: text += f.read() + print(text) return text def handle_dataset(): @@ -136,7 +137,7 @@ def save_result(text): computation_text = do_some_computation() print(computation_text) result += computation_text - if 'BULK_SIZE' in os.environ: + if 'IEXEC_BULK_SLICE_SIZE' in os.environ: bulk_dataset_text = do_bulk_processing() result += bulk_dataset_text dataset_text = handle_dataset()