CTADIRAC 3.0.8a2__tar.gz → 3.0.8.dev2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (331) hide show
  1. {ctadirac-3.0.8a2/src/CTADIRAC.egg-info → ctadirac-3.0.8.dev2}/PKG-INFO +1 -1
  2. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/API/CWLJob.py +7 -4
  3. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/Utilities/CWLTranslator.py +104 -121
  4. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/Utilities/CWLUtilities.py +1 -1
  5. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/_version.py +3 -3
  6. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2/src/CTADIRAC.egg-info}/PKG-INFO +1 -1
  7. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/api/test_cwl_job.py +1 -1
  8. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/api/test_cwl_translator.py +9 -62
  9. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/CODEOWNERS +0 -0
  10. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/LICENCE +0 -0
  11. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/MANIFEST.in +0 -0
  12. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/README.md +0 -0
  13. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/aiv-config.yml +0 -0
  14. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/ctadirac_requirements_traceability_matrix.csv +0 -0
  15. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/docker/dirac-client/Dockerfile +0 -0
  16. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/docker/dirac-client/EGI-trustanchors.repo +0 -0
  17. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/docker/dirac-client/Entrypoint.sh +0 -0
  18. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/docs/examples/dl0_to_dl2_example.yml +0 -0
  19. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/docs/examples/mc_example.yml +0 -0
  20. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/docs/examples/process_corsika_with_sim_telarray.yml +0 -0
  21. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/docs/examples/testJob.py +0 -0
  22. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/docs/install_CTADIRAC.md +0 -0
  23. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/docs/install_client.md +0 -0
  24. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/docs/install_site_desy.cfg +0 -0
  25. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/environment.yml +0 -0
  26. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/pylint.log +0 -0
  27. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/pyproject.toml +0 -0
  28. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/release.notes +0 -0
  29. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/releases.cfg +0 -0
  30. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/report/inspection.tex +0 -0
  31. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/report/performance_verification.tex +0 -0
  32. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/report/preamble.tex +0 -0
  33. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/setup.cfg +0 -0
  34. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/sonar-project.properties +0 -0
  35. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ConfigurationSystem/Agent/StorageMonitorAgent.py +0 -0
  36. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ConfigurationSystem/Agent/__init__.py +0 -0
  37. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ConfigurationSystem/ConfigTemplate.cfg +0 -0
  38. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ConfigurationSystem/__init__.py +0 -0
  39. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/Utilities/SoftwareManager.py +0 -0
  40. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/Utilities/__init__.py +0 -0
  41. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/Utilities/return_values.py +0 -0
  42. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/Utilities/tool_box.py +0 -0
  43. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/Utilities/typer_callbacks.py +0 -0
  44. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/Workflow/Modules/ProdDataManager.py +0 -0
  45. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/Workflow/Modules/__init__.py +0 -0
  46. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/Workflow/__init__.py +0 -0
  47. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/__init__.py +0 -0
  48. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/__init__.py +0 -0
  49. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_dms_check_lfn.py +0 -0
  50. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_job_get_parameter.py +0 -0
  51. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_add_dataset.py +0 -0
  52. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_add_file.py +0 -0
  53. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_add_prov.py +0 -0
  54. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_check_replicas.py +0 -0
  55. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_create_dataset_description.py +0 -0
  56. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_create_evndisp_dataset_description.py +0 -0
  57. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_dump_dataset.py +0 -0
  58. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_failure_monitor.py +0 -0
  59. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_find_datasets.py +0 -0
  60. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_fix_nsb.py +0 -0
  61. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_get_file.py +0 -0
  62. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_get_file_by_query.py +0 -0
  63. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_get_file_size.py +0 -0
  64. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_get_merge_size.py +0 -0
  65. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_get_replicas.py +0 -0
  66. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_get_se_status.py +0 -0
  67. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_git_clone.py +0 -0
  68. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_init_prov.py +0 -0
  69. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_managedata.py +0 -0
  70. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_mark_corrupted_DL0.py +0 -0
  71. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_monitor.py +0 -0
  72. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_remove_corrupted_dl2.py +0 -0
  73. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_remove_corrupted_file.py +0 -0
  74. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_remove_dataset.py +0 -0
  75. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_remove_file.py +0 -0
  76. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_remove_replica.py +0 -0
  77. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_replicate_lfn.py +0 -0
  78. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_set_metadata.py +0 -0
  79. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_setup_software.py +0 -0
  80. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_show_dataset.py +0 -0
  81. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_split_dataset.py +0 -0
  82. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_split_dataset_bulk.py +0 -0
  83. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_unregister_file.py +0 -0
  84. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_unregister_replica.py +0 -0
  85. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_update_dataset.py +0 -0
  86. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_prod_verifysteps.py +0 -0
  87. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_rms_request.py +0 -0
  88. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_add_files.py +0 -0
  89. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_clean.py +0 -0
  90. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_delete.py +0 -0
  91. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_get_files.py +0 -0
  92. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_get_tasks.py +0 -0
  93. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_move_dataset.py +0 -0
  94. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_move_dataset_status.py +0 -0
  95. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_move_files.py +0 -0
  96. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_remove_dataset.py +0 -0
  97. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_remove_files.py +0 -0
  98. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_remove_replicas.py +0 -0
  99. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_select.py +0 -0
  100. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_show_progress.py +0 -0
  101. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_treat_done_tasks.py +0 -0
  102. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_treat_failed_tasks.py +0 -0
  103. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_treat_incomplete_transfers.py +0 -0
  104. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_transformation_treat_problematic_files.py +0 -0
  105. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Core/scripts/cta_user_managedata.py +0 -0
  106. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/Agent/RequestOperations/CTADMSRequestOperationsBase.py +0 -0
  107. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/Agent/RequestOperations/CTARegisterReplica.py +0 -0
  108. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/Agent/RequestOperations/CTARemoveReplica.py +0 -0
  109. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/Agent/RequestOperations/CTAReplicateAndRegister.py +0 -0
  110. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/Agent/RequestOperations/__init__.py +0 -0
  111. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/Agent/__init__.py +0 -0
  112. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/Client/ProvBase.py +0 -0
  113. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/Client/ProvClient.py +0 -0
  114. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/Client/__init__.py +0 -0
  115. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/ConfigTemplate.cfg +0 -0
  116. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/DB/ProvenanceDB.py +0 -0
  117. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/DB/__init__.py +0 -0
  118. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/ProvenanceManagerHandler.py +0 -0
  119. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/__init__.py +0 -0
  120. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/private/JSONUtils.py +0 -0
  121. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/DataManagementSystem/private/__init__.py +0 -0
  122. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/API/CTAJob.py +0 -0
  123. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/API/CtapipeApplyModelsJob.py +0 -0
  124. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/API/CtapipeMergeJob.py +0 -0
  125. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/API/CtapipeProcessJob.py +0 -0
  126. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/API/CtapipeTrainClassifierJob.py +0 -0
  127. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/API/CtapipeTrainEnergyJob.py +0 -0
  128. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/API/EvnDispJob.py +0 -0
  129. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/API/MCPipeJob.py +0 -0
  130. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/API/MCSimTelProcessJob.py +0 -0
  131. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/API/SimPipeJob.py +0 -0
  132. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/API/__init__.py +0 -0
  133. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Interfaces/__init__.py +0 -0
  134. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/CWLUtils.py +0 -0
  135. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/CWLWorkflow.py +0 -0
  136. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/CWLWorkflowStep.py +0 -0
  137. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/README.md +0 -0
  138. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/__init__.py +0 -0
  139. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/cta-user-managedata-processing.yml +0 -0
  140. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/cta-user-managedata.cwl +0 -0
  141. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/cta-user-managedata.yml +0 -0
  142. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/dirac_ctapipe-process_wrapper +0 -0
  143. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/dirac_ctapipe-process_wrapper.cwl +0 -0
  144. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/dirac_ctapipe-process_wrapper.yml +0 -0
  145. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/dirac_prod_run.cwl +0 -0
  146. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/dirac_prod_run.yml +0 -0
  147. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/setup-software-processing.yml +0 -0
  148. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/setup-software.cwl +0 -0
  149. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/setup-software.yml +0 -0
  150. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/simulation-run.cwl +0 -0
  151. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/simulation-run.png +0 -0
  152. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/CWL/simulation-run.yml +0 -0
  153. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/Client/Utilities/__init__.py +0 -0
  154. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/Client/Utilities/production_utils.py +0 -0
  155. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/Client/WorkflowElement.py +0 -0
  156. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/Client/__init__.py +0 -0
  157. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/DB/ProductionDB.py +0 -0
  158. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/DB/__init__.py +0 -0
  159. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/Service/ProductionManagerHandler.py +0 -0
  160. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/__init__.py +0 -0
  161. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/__init__.py +0 -0
  162. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/processing_config_from_meta_query.yml +0 -0
  163. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/paranal/alpha/az000/dl0_to_dl2.yml +0 -0
  164. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/paranal/alpha/az000/merge.yml +0 -0
  165. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/paranal/alpha/az180/dl0_to_dl2.yml +0 -0
  166. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/paranal/alpha/az180/merge.yml +0 -0
  167. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/paranal/alphanectarcam/az000/dl0_to_dl2.yml +0 -0
  168. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/paranal/alphanectarcam/az000/merge.yml +0 -0
  169. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/paranal/alphanectarcam/az180/dl0_to_dl2.yml +0 -0
  170. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/paranal/alphanectarcam/az180/merge.yml +0 -0
  171. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alpha/az000/apply_models.yml +0 -0
  172. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alpha/az000/dl0_to_dl2.yml +0 -0
  173. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alpha/az000/merge.yml +0 -0
  174. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alpha/az000/train_classifier.yml +0 -0
  175. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alpha/az000/train_energy.yml +0 -0
  176. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alpha/az180/dl0_to_dl2.yml +0 -0
  177. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alpha/az180/merge.yml +0 -0
  178. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alphanectarcam/az000/apply_models.yml +0 -0
  179. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alphanectarcam/az000/dl0_to_dl2.yml +0 -0
  180. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alphanectarcam/az000/merge.yml +0 -0
  181. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alphanectarcam/az000/train_classifier.yml +0 -0
  182. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alphanectarcam/az000/train_energy.yml +0 -0
  183. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alphanectarcam/az180/apply_models.yml +0 -0
  184. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alphanectarcam/az180/dl0_to_dl2.yml +0 -0
  185. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alphanectarcam/az180/merge.yml +0 -0
  186. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alphanectarcam/az180/train_classifier.yml +0 -0
  187. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5/processing/alphanectarcam/az180/train_energy.yml +0 -0
  188. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/lapalma/alpha/az000/dl0_to_dl2.yml +0 -0
  189. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/lapalma/alpha/az000/merge.yml +0 -0
  190. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/lapalma/alpha/az180/dl0_to_dl2.yml +0 -0
  191. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/lapalma/alpha/az180/merge.yml +0 -0
  192. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/processing/lapalma/alpha/az000/apply_models.yml +0 -0
  193. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/processing/lapalma/alpha/az000/dl0_to_dl2.yml +0 -0
  194. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/processing/lapalma/alpha/az000/merge.yml +0 -0
  195. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/processing/lapalma/alpha/az000/train_classifier.yml +0 -0
  196. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/processing/lapalma/alpha/az000/train_energy.yml +0 -0
  197. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/processing/lapalma/alpha/az180/apply_models.yml +0 -0
  198. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/processing/lapalma/alpha/az180/dl0_to_dl2.yml +0 -0
  199. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/processing/lapalma/alpha/az180/merge.yml +0 -0
  200. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/processing/lapalma/alpha/az180/train_classifier.yml +0 -0
  201. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod5b/processing/lapalma/alpha/az180/train_energy.yml +0 -0
  202. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/processing/az000/apply_models_all_div.yml +0 -0
  203. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/processing/az000/dl0_to_dl2_div0.0022.yml +0 -0
  204. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/processing/az000/dl0_to_dl2_div0.0043.yml +0 -0
  205. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/processing/az000/dl0_to_dl2_div0.008.yml +0 -0
  206. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/processing/az000/dl0_to_dl2_div0.01135.yml +0 -0
  207. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/processing/az000/dl0_to_dl2_div0.01453.yml +0 -0
  208. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/processing/az000/merge_div0.0022.yml +0 -0
  209. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/processing/az000/merge_div0.0043.yml +0 -0
  210. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/processing/az000/merge_div0.008.yml +0 -0
  211. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/processing/az000/merge_div0.01135.yml +0 -0
  212. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/processing/az000/merge_div0.01453.yml +0 -0
  213. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/processing/az000/train_classifier_all_div.yml +0 -0
  214. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/processing/az000/train_energy_all_div.yml +0 -0
  215. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/config/prod6_divergent/simulation/sim_test.yml +0 -0
  216. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/scripts/__init__.py +0 -0
  217. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/scripts/cta_prod_create_workflow_config.py +0 -0
  218. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/scripts/cta_prod_create_workflow_evndisp_config.py +0 -0
  219. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/scripts/cta_prod_get_all.py +0 -0
  220. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/scripts/cta_prod_submit.py +0 -0
  221. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/scripts/cta_prod_submit_from_cwl.py +0 -0
  222. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/scripts/cta_prod_submit_from_cwl_workflow.py +0 -0
  223. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/ProductionSystem/test/test_launcher_from_cwl.py +0 -0
  224. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/TransformationSystem/Agent/TransformationFailoverAgent.py +0 -0
  225. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/TransformationSystem/Agent/__init__.py +0 -0
  226. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/TransformationSystem/ConfigTemplate.cfg +0 -0
  227. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/TransformationSystem/DB/TransformationDB.py +0 -0
  228. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/TransformationSystem/DB/__init__.py +0 -0
  229. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/TransformationSystem/Service/TornadoTransformationManagerHandler.py +0 -0
  230. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/TransformationSystem/Service/TransformationManagerHandler.py +0 -0
  231. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/TransformationSystem/Service/__init__.py +0 -0
  232. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/TransformationSystem/Utils/FailoverUtilities.py +0 -0
  233. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Workflow/Modules/__init__.py +0 -0
  234. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Workflow/Modules/cta_script.py +0 -0
  235. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Workflow/Modules/cta_update_ts.py +0 -0
  236. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/Workflow/__init__.py +0 -0
  237. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/WorkloadManagementSystem/Client/CTAODownloadInputData.py +0 -0
  238. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/WorkloadManagementSystem/Client/__init__.py +0 -0
  239. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/WorkloadManagementSystem/__init__.py +0 -0
  240. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/__init__.py +0 -0
  241. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/_dev/__init__.py +0 -0
  242. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC/version.py +0 -0
  243. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC.egg-info/SOURCES.txt +0 -0
  244. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC.egg-info/dependency_links.txt +0 -0
  245. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC.egg-info/entry_points.txt +0 -0
  246. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC.egg-info/requires.txt +0 -0
  247. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/src/CTADIRAC.egg-info/top_level.txt +0 -0
  248. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/complex_workflow/calibpipe-camcalib-tool.cwl +0 -0
  249. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/complex_workflow/camera_calibration_inputs.yaml +0 -0
  250. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/complex_workflow/ctapipe-merge-tool.cwl +0 -0
  251. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/complex_workflow/ctapipe-pix-stats-tool.cwl +0 -0
  252. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/complex_workflow/ctapipe-process-tool.cwl +0 -0
  253. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/complex_workflow/perform-camera-calibration.cwl +0 -0
  254. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/complex_workflow/utils/copy-file.cwl +0 -0
  255. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/complex_workflow/utils/select-input.cwl +0 -0
  256. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/expression_tool/inputs_process_multiple.yaml +0 -0
  257. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/expression_tool/internal/output_names.cwl +0 -0
  258. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/expression_tool/merge.cwl +0 -0
  259. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/expression_tool/process_dl0_dl1.cwl +0 -0
  260. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/expression_tool/process_dl0_dl1_multiple.cwl +0 -0
  261. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/expression_tool_scatter/inputs_process_multiple.yaml +0 -0
  262. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/expression_tool_scatter/internal/output_names.cwl +0 -0
  263. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/expression_tool_scatter/merge.cwl +0 -0
  264. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/expression_tool_scatter/process_dl0_dl1.cwl +0 -0
  265. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/expression_tool_scatter/process_dl0_dl1_multiple.cwl +0 -0
  266. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/scatter_feat_requirement/inputs_dl0_dl1_multiple.yaml +0 -0
  267. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/scatter_feat_requirement/merge.cwl +0 -0
  268. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/scatter_feat_requirement/process_dl0_dl1.cwl +0 -0
  269. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/scatter_feat_requirement/process_dl0_dl1_multiple.cwl +0 -0
  270. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/single_command_line_tool/inputs_process_dl0_dl1.yaml +0 -0
  271. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/single_command_line_tool/process_dl0_dl1.cwl +0 -0
  272. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/step_input_requirement/inputs_workflow_dl0_to_dl2.yaml +0 -0
  273. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/step_input_requirement/process_dl0_dl1.cwl +0 -0
  274. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/step_input_requirement/process_dl1_dl2.cwl +0 -0
  275. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/resources/cwl/step_input_requirement/workflow_dl0_to_dl2.cwl +0 -0
  276. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/CWL/cta-prod-managedata-processing.yml +0 -0
  277. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/CWL/cta-prod-managedata.cwl +0 -0
  278. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/CWL/cta-prod-managedata.yml +0 -0
  279. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/CWL/dirac_ctapipe-process_wrapper +0 -0
  280. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/CWL/dirac_ctapipe-process_wrapper.cwl +0 -0
  281. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/CWL/dirac_ctapipe-process_wrapper.yml +0 -0
  282. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/CWL/dirac_prod_run +0 -0
  283. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/CWL/dirac_prod_run.cwl +0 -0
  284. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/CWL/dirac_prod_run.yml +0 -0
  285. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/CWL/setup-software-processing.yml +0 -0
  286. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/CWL/setup-software.cwl +0 -0
  287. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/CWL/setup-software.yml +0 -0
  288. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/config/full_production_config.yml +0 -0
  289. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/config/processing_merging_config_from_dataset.yml +0 -0
  290. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/config/production_config.yml +0 -0
  291. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/datasets/Prod5b_LaPalma_AdvancedBaseline_NSB1x_electron_North_20deg_R1.json +0 -0
  292. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/datasets/Prod6_Paranal_gamma_South_20deg.json +0 -0
  293. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/runTestSuite.py +0 -0
  294. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/testDMSDefinitions.py +0 -0
  295. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/testFileCatalogDefinitions.py +0 -0
  296. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/testJobDefinitions.py +0 -0
  297. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/testJobUtils.py +0 -0
  298. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/testProdDefinitions.py +0 -0
  299. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/testSuiteDefinition.py +0 -0
  300. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/system/testTransDefinitions.py +0 -0
  301. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/api/__init__.py +0 -0
  302. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/api/test_cwl_utils.py +0 -0
  303. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/api/test_job.py +0 -0
  304. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/core/utilities/test_tool_box.py +0 -0
  305. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/core/workflow/modules/test_prod_data_manager.py +0 -0
  306. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/production/__init__.py +0 -0
  307. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/production/test_prod_submit_utils.py +0 -0
  308. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/production/test_workflow_element.py +0 -0
  309. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/scripts/core/test_cta_get_job_parameter.py +0 -0
  310. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/scripts/production_system/test_production_scripts.py +0 -0
  311. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/scripts/test_typer_callbacks.py +0 -0
  312. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/test_dummy.py +0 -0
  313. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/transformation/agent/test_transformation_agents.py +0 -0
  314. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/transformation/agent/test_transformation_failover_utils.py +0 -0
  315. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/tests/unit/workload_management/client/test_ctao_download_inputdata.py +0 -0
  316. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/ci/env/coverage.yml +0 -0
  317. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/cvmfs/build_corsika-77410-original.sh +0 -0
  318. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/cvmfs/build_corsika-77410.sh +0 -0
  319. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/deploy/README.md +0 -0
  320. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/deploy/bin/install-ctadirac-server.sh +0 -0
  321. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/deploy/caUtilities/openssl_config_ca.cnf +0 -0
  322. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/deploy/caUtilities/openssl_config_host.cnf +0 -0
  323. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/deploy/caUtilities/openssl_config_user.cnf +0 -0
  324. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/deploy/caUtilities/utilities.sh +0 -0
  325. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/deploy/files/EGI-trustanchors.repo +0 -0
  326. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/deploy/files/dirac_example.cfg +0 -0
  327. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/deploy/files/kill_runsv.sh +0 -0
  328. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/deploy/files/runsvdir-start +0 -0
  329. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/deploy/files/runsvdir-start.service +0 -0
  330. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/deploy/files/site.conf +0 -0
  331. {ctadirac-3.0.8a2 → ctadirac-3.0.8.dev2}/utils/deploy/files/web_app_example.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: CTADIRAC
3
- Version: 3.0.8a2
3
+ Version: 3.0.8.dev2
4
4
  Summary: CTADIRAC is an extension of the DIRAC interware for dedicated CTA usage.
5
5
  Author-email: Luisa Arrabito <arrabito@in2p3.fr>
6
6
  License: BSD 3-Clause License
@@ -7,6 +7,7 @@ from cwl_utils.parser import save
7
7
  from DIRAC.Interfaces.API.Dirac import Dirac
8
8
  from DIRAC.Interfaces.API.Job import Job
9
9
  from ruamel.yaml import YAML
10
+
10
11
  from CTADIRAC.Interfaces.Utilities.CWLTranslator import CWLTranslator
11
12
 
12
13
 
@@ -31,10 +32,11 @@ class CWLJob(Job, CWLTranslator):
31
32
  ) -> None:
32
33
  Job.__init__(self)
33
34
  CWLTranslator.__init__(self, cwl_workflow, cwl_inputs)
34
- self.logfile_name = "cwl_job"
35
+
35
36
  self.cvmfs_base_path = cvmfs_base_path
36
37
  self.apptainer_options = apptainer_options if apptainer_options else []
37
38
  self._output_se = output_se
39
+
38
40
  self.translate(self.cvmfs_base_path, self.apptainer_options)
39
41
 
40
42
  def submit(self):
@@ -46,12 +48,14 @@ class CWLJob(Job, CWLTranslator):
46
48
  """
47
49
  dirac = Dirac()
48
50
  yaml = YAML()
51
+
49
52
  # Create the modified Dirac compliant CWL workflow and inputs files to submit
50
53
  with tempfile.NamedTemporaryFile(
51
54
  suffix=f"_{self.cwl_workflow_path.name}"
52
55
  ) as temp_workflow:
53
56
  yaml.dump(save(self.transformed_cwl), temp_workflow)
54
57
  temp_workflow.flush()
58
+
55
59
  with tempfile.NamedTemporaryFile(
56
60
  suffix=f"_{self.cwl_inputs_path.name}"
57
61
  ) as temp_inputs:
@@ -72,10 +76,9 @@ class CWLJob(Job, CWLTranslator):
72
76
  arguments_str = (
73
77
  f"{Path(temp_workflow.name).name} {Path(temp_inputs.name).name}"
74
78
  )
79
+
75
80
  self.setExecutable(
76
- "cwltool",
77
- arguments=arguments_str,
78
- logFile=f"{self.logfile_name}.log",
81
+ "cwltool", arguments=arguments_str, logFile=f"{self.name}.log"
79
82
  )
80
83
  res = dirac.submitJob(self)
81
84
  return res
@@ -95,12 +95,12 @@ class CWLTranslator:
95
95
  apptainer_options : list[Any]
96
96
  A list of options for Apptainer.
97
97
  """
98
- self._extract_input_files(self.original_inputs)
98
+
99
99
  if self.transformed_cwl.hints:
100
100
  self.transformed_cwl = self._translate_docker_hints(
101
101
  self.transformed_cwl, cvmfs_base_path, apptainer_options
102
102
  )
103
-
103
+ self._extract_and_translate_input_files()
104
104
  self._extract_output_files(self.transformed_cwl, self.original_inputs)
105
105
 
106
106
  def _translate_workflow(
@@ -115,39 +115,39 @@ class CWLTranslator:
115
115
  apptainer_options : list[Any]
116
116
  A list of options for Apptainer.
117
117
  """
118
- # Extract the DIRAC related
119
- self._extract_input_files(self.original_inputs)
120
118
  # Need to set the file basename for JSReq:
121
- steps_inputs = deepcopy(self.transformed_inputs)
119
+ self.transformed_inputs = set_input_file_basename(self.transformed_inputs)
120
+ self.transformed_inputs = fill_defaults(
121
+ self.transformed_cwl, self.transformed_inputs
122
+ )
123
+ # Extract the DIRAC related
124
+ self._extract_and_translate_input_files()
125
+
122
126
  self.evaluated_steps_outputs = {}
127
+ steps_inputs = deepcopy(self.transformed_inputs)
123
128
  for n, wf_step in enumerate(self.transformed_cwl.steps):
124
- # TODO: handle the case where the step is also a workflow
125
- if isinstance(wf_step.run, (CommandLineTool, ExpressionTool)):
126
- step_name = wf_step.id.rpartition("#")[2].split("/")[0]
127
- self.current_step_name = step_name
128
- self.evaluated_steps_outputs.setdefault(step_name, {})
129
- # replace docker hints
130
- if isinstance(wf_step, CommandLineTool) and wf_step.run.hints:
131
- self.transformed_cwl.steps[n].run = self._translate_docker_hints(
132
- wf_step.run, cvmfs_base_path, apptainer_options
133
- )
134
- # Update the input context for next steps
135
- steps_inputs = fill_defaults(wf_step.run, steps_inputs)
136
- steps_inputs = set_input_file_basename(steps_inputs)
137
- steps_inputs = self._evaluate_step_inputs(wf_step, steps_inputs)
138
-
139
- # Evaluate step outputs
140
- # specific evaluation if the step is an ExpressionTool
141
- if isinstance(wf_step.run, ExpressionTool):
142
- exptool_outputs = self._evaluate_expression_tool_outputs(
143
- self.unpacked_cwl, wf_step, steps_inputs, step_name
144
- )
145
- self.evaluated_steps_outputs[step_name] = exptool_outputs
146
- else:
147
- self._evaluate_step_outputs(wf_step, steps_inputs)
148
- elif isinstance(wf_step, Workflow):
149
- raise NotImplementedError("Workflow steps are not handle yet...")
150
-
129
+ step_name = wf_step.id.rpartition("#")[2].split("/")[0]
130
+ self.current_step_name = step_name
131
+ self.evaluated_steps_outputs.setdefault(step_name, {})
132
+ # replace docker hints
133
+ if wf_step.run.hints:
134
+ self.transformed_cwl.steps[n].run = self._translate_docker_hints(
135
+ wf_step.run, cvmfs_base_path, apptainer_options
136
+ )
137
+ # Update the input context for next steps
138
+ steps_inputs = fill_defaults(wf_step.run, steps_inputs)
139
+ steps_inputs = set_input_file_basename(steps_inputs)
140
+ steps_inputs = self._evaluate_step_inputs(wf_step, steps_inputs)
141
+
142
+ # Evaluate step outputs
143
+ # specific evaluation if the step is an ExpressionTool
144
+ if isinstance(wf_step.run, ExpressionTool):
145
+ exptool_outputs = self._evaluate_expression_tool_outputs(
146
+ self.unpacked_cwl, wf_step, steps_inputs, step_name
147
+ )
148
+ self.evaluated_steps_outputs[step_name] = exptool_outputs
149
+ else:
150
+ self._evaluate_step_outputs(wf_step, steps_inputs)
151
151
  # Finally extract the DIRAC related outputs
152
152
  self._extract_workflow_outputs()
153
153
 
@@ -230,7 +230,6 @@ class CWLTranslator:
230
230
  list | dict[str, Any] | None
231
231
  Evaluated CWL File or list of CWL File
232
232
  """
233
- transformed_inputs = deepcopy(self.transformed_inputs)
234
233
  inp_id = inp.id.rpartition("#")[2].split("/")[-1]
235
234
  if inp.valueFrom:
236
235
  # evaluate if it is a JS exp
@@ -301,8 +300,8 @@ class CWLTranslator:
301
300
  ):
302
301
  # TODO: can that be a list?
303
302
  return self.evaluated_steps_outputs[step_ref][source]
304
- elif inp_source[0] in save(transformed_inputs):
305
- return save(transformed_inputs)[inp_source[0]]
303
+ elif inp_source[0] in save(self.transformed_inputs):
304
+ return save(self.transformed_inputs)[inp_source[0]]
306
305
  elif inp_source[0] in input_context:
307
306
  return input_context[inp_source[0]]
308
307
 
@@ -379,44 +378,37 @@ class CWLTranslator:
379
378
  """
380
379
  for output in step.run.outputs:
381
380
  output_name = output.id.rpartition("#")[2].split("/")[-1]
382
- glob = output.outputBinding.glob
383
- if glob:
384
- if isinstance(glob, str):
385
- # the glob is an expression we evaluate it
386
- glob_exp = glob if glob.startswith("$(") else None
387
- if glob_exp:
388
- eval_glob = do_eval(
389
- glob,
390
- inputs,
391
- outdir=None,
392
- requirements=[],
393
- tmpdir=None,
394
- resources={},
395
- )
396
- if step.scatter and isinstance(eval_glob, list):
397
- for out in eval_glob:
398
- self.evaluated_steps_outputs[
399
- self.current_step_name
400
- ].setdefault(output_name, []).append(
401
- format_output_by_type(out, output.type_)
402
- )
403
- else:
404
- self.evaluated_steps_outputs[self.current_step_name][
405
- output_name
406
- ] = format_output_by_type(eval_glob, output.type_)
381
+ if output.outputBinding.glob:
382
+ # the glob is an expression we evaluate it
383
+ glob_exp = (
384
+ output.outputBinding.glob
385
+ if output.outputBinding.glob.startswith("$(")
386
+ else None
387
+ )
388
+ if glob_exp:
389
+ glob = do_eval(
390
+ output.outputBinding.glob,
391
+ inputs,
392
+ outdir=None,
393
+ requirements=[],
394
+ tmpdir=None,
395
+ resources={},
396
+ )
397
+ if step.scatter and isinstance(glob, list):
398
+ for out in glob:
399
+ self.evaluated_steps_outputs[
400
+ self.current_step_name
401
+ ].setdefault(output_name, []).append(
402
+ format_output_by_type(out, output.type_)
403
+ )
407
404
  else:
408
405
  self.evaluated_steps_outputs[self.current_step_name][
409
406
  output_name
410
407
  ] = format_output_by_type(glob, output.type_)
411
- elif isinstance(glob, list):
412
- self.evaluated_steps_outputs[self.current_step_name].setdefault(
413
- output_name, []
414
- )
415
- for g in glob:
416
- if isinstance(g, str):
417
- self.evaluated_steps_outputs[self.current_step_name][
418
- output_name
419
- ].append(format_output_by_type(g, output.type_))
408
+ else:
409
+ self.evaluated_steps_outputs[self.current_step_name][
410
+ output_name
411
+ ] = format_output_by_type(output.outputBinding.glob, output.type_)
420
412
 
421
413
  def _evaluate_expression_tool_outputs(
422
414
  self,
@@ -545,44 +537,40 @@ class CWLTranslator:
545
537
 
546
538
  return expr_inputs
547
539
 
548
- def _extract_input_files(self, cwl_inputs: dict):
549
- """Extract input sandboxes/data inputs.
550
-
551
- Parameters
552
- ----------
553
- inputs : dict
554
- CWL inputs
540
+ def _extract_and_translate_input_files(self) -> None:
541
+ """Extract input files from CWL inputs and rewrite file paths.
542
+ If the file is a Sandbox, ensure there is no absolute path, and store it in the input sandbox list.
543
+ If the file is a LFN, remove the lfn prefix and store it in the lfns list.
555
544
  """
556
- inputs = deepcopy(cwl_inputs)
557
- for inp_name, inp_value in inputs.items():
558
- if isinstance(inp_value, list):
559
- for index, val in enumerate(inp_value):
560
- if isinstance(val, File):
561
- self._fill_dirac_inputs(val)
562
- # Update the transformed cwl input file
563
- self.transformed_inputs[inp_name][index].path = Path(
564
- val.path
565
- ).name
566
- elif isinstance(inp_value, File):
567
- self._fill_dirac_inputs(inp_value)
568
- # Update the transformed cwl input file
569
- self.transformed_inputs[inp_name].path = Path(inp_value.path).name
570
-
571
- def _fill_dirac_inputs(self, input_file: File):
572
- """Fill DIRAC input sanbox and data lists.
573
545
 
574
- Parameters
575
- ----------
576
- input_value : File
577
- File input
578
- """
579
- if input_file.path.startswith(LFN_PREFIX):
580
- self.input_data.append(
581
- input_file.path.replace(LFN_PREFIX, LFN_DIRAC_PREFIX)
582
- )
583
- else:
584
- sandbox = Path(input_file.path.replace(LOCAL_PREFIX, ""))
585
- self.input_sandbox.append(str(sandbox.absolute()))
546
+ def rewrite_file_path(file: File | str) -> str:
547
+ """Rewrite file path.
548
+
549
+ Parameters
550
+ ----------
551
+ file : File | str
552
+ File which path should be rewritten.
553
+
554
+ Returns:
555
+ -----
556
+ str:
557
+ The new file path.
558
+ """
559
+ path, is_lfn = self._translate_sandboxes_and_lfns(file)
560
+ (self.input_data if is_lfn else self.input_sandbox).append(path)
561
+ return Path(path.removeprefix(LFN_DIRAC_PREFIX)).name
562
+
563
+ for key, input_value in self.transformed_inputs.items():
564
+ if isinstance(input_value, list):
565
+ for file in input_value:
566
+ if isinstance(file, File):
567
+ file.path = rewrite_file_path(file)
568
+ elif isinstance(input_value, File):
569
+ input_value.path = rewrite_file_path(input_value)
570
+ elif isinstance(input_value, str) and input_value.startswith(LFN_PREFIX):
571
+ self.transformed_inputs[key] = Path(
572
+ input_value.removeprefix(LFN_PREFIX)
573
+ ).name
586
574
 
587
575
  def _translate_sandboxes_and_lfns(self, file: File | str) -> tuple[str, bool]:
588
576
  """Extract local files as sandboxes and lfns as input data.
@@ -610,22 +598,17 @@ class CWLTranslator:
610
598
  def _extract_workflow_outputs(self):
611
599
  """Extract the DIRAC outputs (output sandbox/data) from Workflow outputs."""
612
600
  for output in self.transformed_cwl.outputs:
613
- output_sources = output.outputSource
614
- if isinstance(output_sources, str):
615
- output_sources = [output_sources]
616
- if isinstance(output_sources, list):
617
- for output_src in output_sources:
618
- output_source_step = output_src.rpartition("#")[2].split("/")[0]
619
- output_source_name = output_src.rpartition("#")[2].split("/")[-1]
620
- output_value = self.evaluated_steps_outputs[output_source_step].get(
621
- output_source_name, None
622
- )
601
+ output_source_step = output.outputSource.rpartition("#")[2].split("/")[0]
602
+ output_source_name = output.outputSource.rpartition("#")[2].split("/")[-1]
603
+ output_value = self.evaluated_steps_outputs[output_source_step].get(
604
+ output_source_name, None
605
+ )
623
606
 
624
- if isinstance(output_value, list):
625
- for out in output_value:
626
- self._fill_dirac_outputs(out)
627
- elif output_value:
628
- self._fill_dirac_outputs(output_value)
607
+ if isinstance(output_value, list):
608
+ for out in output_value:
609
+ self._fill_dirac_outputs(out)
610
+ else:
611
+ self._fill_dirac_outputs(output_value)
629
612
 
630
613
  def _fill_dirac_outputs(self, output_value: dict):
631
614
  """Fill DIRAC output sandbox and data lists.
@@ -634,7 +617,7 @@ class CWLTranslator:
634
617
  ----------
635
618
  output_value : dict
636
619
  """
637
- if isinstance(output_value, dict) and output_value.get("class", None) == "File":
620
+ if output_value.get("class", None) == "File":
638
621
  if output_value.get("path", "").startswith(LFN_PREFIX):
639
622
  self.output_data.append(
640
623
  output_value.get("path", "").replace(LFN_PREFIX, LFN_DIRAC_PREFIX)
@@ -228,7 +228,7 @@ def format_output_by_type(
228
228
  if isinstance(out_type, str):
229
229
  if out_type in ["boolean", "string", "int"]:
230
230
  return output
231
- elif out_type in ["File", "File[]"]:
231
+ elif out_type == "File":
232
232
  return {"class": "File", "path": output}
233
233
  elif isinstance(out_type, OutputArraySchema):
234
234
  if out_type.type_ == "File":
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '3.0.8a2'
32
- __version_tuple__ = version_tuple = (3, 0, 8, 'a2')
31
+ __version__ = version = '3.0.8.dev2'
32
+ __version_tuple__ = version_tuple = (3, 0, 8, 'dev2')
33
33
 
34
- __commit_id__ = commit_id = 'gc79ca8610'
34
+ __commit_id__ = commit_id = 'ge29143644'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: CTADIRAC
3
- Version: 3.0.8a2
3
+ Version: 3.0.8.dev2
4
4
  Summary: CTADIRAC is an extension of the DIRAC interware for dedicated CTA usage.
5
5
  Author-email: Luisa Arrabito <arrabito@in2p3.fr>
6
6
  License: BSD 3-Clause License
@@ -242,7 +242,7 @@ def test_datapipe_cwl_job(mock_submit_job):
242
242
  assert save(job.transformed_inputs) == {
243
243
  "dl0": {"class": "File", "path": "gamma_cone10_run010000.simtel.zst"},
244
244
  "processing_config": {"class": "File", "path": "process_config.yaml"},
245
- "dl1_filename": "lfn:///ctao/datapipe/test.dl1.h5",
245
+ "dl1_filename": "test.dl1.h5",
246
246
  }
247
247
 
248
248
  result = job.submit()
@@ -213,7 +213,7 @@ def test_translate_docker_hints(
213
213
  {"input1": File(path=LOCAL_PREFIX + "test_local_file.txt")},
214
214
  {
215
215
  "transformed_inputs": {"input1": File(path="test_local_file.txt")},
216
- "input_sandbox": [str(Path("test_local_file.txt").absolute())],
216
+ "input_sandbox": ["test_local_file.txt"],
217
217
  "input_data": [],
218
218
  },
219
219
  ),
@@ -231,7 +231,7 @@ def test_translate_docker_hints(
231
231
  File(path="test_local_file1.txt"),
232
232
  ]
233
233
  },
234
- "input_sandbox": [str(Path("test_local_file1.txt").absolute())],
234
+ "input_sandbox": ["test_local_file1.txt"],
235
235
  "input_data": [LFN_DIRAC_PREFIX + "/ctao/test_lfn_file1.txt"],
236
236
  },
237
237
  ),
@@ -253,10 +253,7 @@ def test_translate_docker_hints(
253
253
  File(path="test_local_file3.txt"),
254
254
  ],
255
255
  },
256
- "input_sandbox": [
257
- str(Path("test_local_file2.txt").absolute()),
258
- str(Path("test_local_file3.txt").absolute()),
259
- ],
256
+ "input_sandbox": ["test_local_file2.txt", "test_local_file3.txt"],
260
257
  "input_data": [
261
258
  LFN_DIRAC_PREFIX + "/ctao/test_lfn_file2.txt",
262
259
  LFN_DIRAC_PREFIX + "/ctao/test_lfn_file3.txt",
@@ -275,9 +272,7 @@ def test_translate_docker_hints(
275
272
  File(path="test_local_file1.txt"),
276
273
  ]
277
274
  },
278
- "input_sandbox": [
279
- str(Path("some/path/test_local_file1.txt").absolute())
280
- ],
275
+ "input_sandbox": ["some/path/test_local_file1.txt"],
281
276
  "input_data": [],
282
277
  },
283
278
  ),
@@ -289,9 +284,7 @@ def test_translate_docker_hints(
289
284
  "transformed_inputs": {
290
285
  "input1": File(path="test_local_file1.txt"),
291
286
  },
292
- "input_sandbox": [
293
- str(Path("some/path/test_local_file1.txt").absolute())
294
- ],
287
+ "input_sandbox": ["some/path/test_local_file1.txt"],
295
288
  "input_data": [],
296
289
  },
297
290
  ),
@@ -304,24 +297,22 @@ def test_translate_docker_hints(
304
297
  {
305
298
  "transformed_inputs": {
306
299
  "input1": File(path="test_local_file1.txt"),
307
- "input2": f"{LFN_PREFIX}/ctao/path/test.h5",
300
+ "input2": "test.h5",
308
301
  },
309
- "input_sandbox": [
310
- str(Path("some/path/test_local_file1.txt").absolute())
311
- ],
302
+ "input_sandbox": ["some/path/test_local_file1.txt"],
312
303
  "input_data": [],
313
304
  },
314
305
  ),
315
306
  ],
316
307
  )
317
- def test_extract_input_files(input_cwl, expected_results):
308
+ def test_extract_and_translate_input_files(input_cwl, expected_results):
318
309
  cwl_translator = CWLTranslator.__new__(CWLTranslator)
319
310
 
320
311
  cwl_translator.input_data = []
321
312
  cwl_translator.input_sandbox = []
322
313
  cwl_translator.transformed_inputs = input_cwl
323
314
 
324
- cwl_translator._extract_input_files(input_cwl)
315
+ cwl_translator._extract_and_translate_input_files()
325
316
 
326
317
  assert save(cwl_translator.transformed_inputs) == save(
327
318
  expected_results["transformed_inputs"]
@@ -505,50 +496,6 @@ def test_get_scattered_inputs(step, inputs, expected_result):
505
496
  }
506
497
  },
507
498
  ),
508
- (
509
- WorkflowStep(
510
- id="/some/path#step_1",
511
- in_=[],
512
- out=[],
513
- run=CommandLineTool(
514
- inputs=["input1"],
515
- outputs=[
516
- CommandOutputParameter(
517
- id="/some/path#step_1/output1",
518
- type_="File",
519
- outputBinding=CommandOutputBinding(glob="$(inputs.input1)"),
520
- ),
521
- CommandOutputParameter(
522
- id="/some/path#step_1/output2",
523
- type_="File[]",
524
- outputBinding=CommandOutputBinding(
525
- glob=["file3.txt", "file4.txt"]
526
- ),
527
- ),
528
- ],
529
- baseCommand="echo CLT1",
530
- ),
531
- scatter="input1",
532
- ),
533
- {
534
- "input1": [
535
- {"class": "File", "path": "file1.txt"},
536
- {"class": "File", "path": "file2.txt"},
537
- ],
538
- },
539
- {
540
- "step_1": {
541
- "output1": [
542
- {"class": "File", "path": "file1.txt"},
543
- {"class": "File", "path": "file2.txt"},
544
- ],
545
- "output2": [
546
- {"class": "File", "path": "file3.txt"},
547
- {"class": "File", "path": "file4.txt"},
548
- ],
549
- }
550
- },
551
- ),
552
499
  ],
553
500
  )
554
501
  def test_evaluate_step_outputs(step, inputs, expected_result):
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes