hpc-beeflow 0.1.11.dev2__tar.gz → 0.1.11.dev4__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 (372) hide show
  1. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/PKG-INFO +23 -5
  2. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/README.rst +19 -2
  3. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/client/bee_client.py +39 -8
  4. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/client/core.py +45 -2
  5. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/build/container_drivers.py +47 -41
  6. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/config_driver.py +78 -11
  7. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/config_utils.py +2 -0
  8. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/config_validator.py +3 -1
  9. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cwl/cwl.py +2 -5
  10. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cwl/examples/cat_grep_tar.py +2 -2
  11. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cwl/examples/comd.py +4 -8
  12. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cwl/workflow.py +25 -22
  13. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/deps/neo4j_manager.py +32 -14
  14. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/gdb/graphml_key_updater.py +29 -9
  15. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/gdb/neo4j_driver.py +16 -8
  16. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/integration/utils.py +1 -1
  17. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/parser/parser.py +1 -1
  18. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/wf_data.py +1 -1
  19. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/worker/flux_worker.py +17 -14
  20. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/worker/slurm_worker.py +19 -13
  21. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/worker/utils.py +34 -0
  22. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/README.md +50 -0
  23. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/TO-DO-Some-Suggestion.md +10 -0
  24. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/data/ucsd_fire_burned.csv +1890 -0
  25. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/Dockerfile.fire_analysis +35 -0
  26. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/confusion_matrix_maker.py +76 -0
  27. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/confusion_matrix_maker.sh +6 -0
  28. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/create_tables.py +62 -0
  29. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/create_tables.sh +6 -0
  30. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/eval_models.py +100 -0
  31. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/eval_models.sh +7 -0
  32. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/feature_perm.py +90 -0
  33. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/feature_perm.sh +6 -0
  34. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/optimize_models.py +97 -0
  35. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/optimize_models.sh +6 -0
  36. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/pred_display.py +51 -0
  37. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/pred_display.sh +5 -0
  38. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/preprocess.py +84 -0
  39. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/preprocess.sh +6 -0
  40. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/split_data.py +91 -0
  41. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire-workflow/split_data.sh +5 -0
  42. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/fire_tasks.png +0 -0
  43. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/firebee.py +965 -0
  44. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/rf_fire_tasks.png +0 -0
  45. hpc_beeflow-0.1.11.dev4/beeflow/data/cwl/bee_workflows/fire-ml/rf_only_firebee.py +305 -0
  46. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/task_manager/background.py +26 -17
  47. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/mocks.py +5 -5
  48. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_bee_client.py +6 -3
  49. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_cwl_workflow.py +8 -8
  50. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_slurm_worker.py +8 -7
  51. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_tm.py +2 -2
  52. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_wf_manager.py +6 -2
  53. hpc_beeflow-0.1.11.dev4/beeflow/tests/test_wf_utils.py +61 -0
  54. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/wf_manager/resources/wf_actions.py +4 -3
  55. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/wf_manager/resources/wf_update.py +17 -3
  56. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/wf_manager/resources/wf_utils.py +116 -14
  57. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/pyproject.toml +2 -1
  58. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/LICENSE +0 -0
  59. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/__init__.py +0 -0
  60. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/client/README.md +0 -0
  61. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/client/__init__.py +0 -0
  62. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/client/remote_client.py +0 -0
  63. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/cloud_launcher.py +0 -0
  64. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/README.md +0 -0
  65. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/__init__.py +0 -0
  66. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/api.py +0 -0
  67. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/build/README.md +0 -0
  68. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/build/__init__.py +0 -0
  69. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/build/build_driver.py +0 -0
  70. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/build/utils.py +0 -0
  71. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/build_interfaces.py +0 -0
  72. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cli.py +0 -0
  73. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cli_connection.py +0 -0
  74. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cloud/README.md +0 -0
  75. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cloud/__init__.py +0 -0
  76. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cloud/chameleoncloud.py +0 -0
  77. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cloud/cloud.py +0 -0
  78. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cloud/constants.py +0 -0
  79. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cloud/google.py +0 -0
  80. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cloud/openstack.py +0 -0
  81. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cloud/provider.py +0 -0
  82. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/connection.py +0 -0
  83. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/container_path.py +0 -0
  84. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/crt/__init__.py +0 -0
  85. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/crt/charliecloud_driver.py +0 -0
  86. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/crt/crt_driver.py +0 -0
  87. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/crt/singularity_driver.py +0 -0
  88. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/crt_interface.py +0 -0
  89. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cwl/__init__.py +0 -0
  90. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cwl/examples/Dockerfile.comd-x86_64 +0 -0
  91. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cwl/examples/README.txt +0 -0
  92. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cwl/examples/comd_driver.py +0 -0
  93. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cwl/examples/comd_pre.sh +0 -0
  94. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/cwl/examples/lorem.txt +0 -0
  95. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/db/__init__.py +0 -0
  96. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/db/bdb.py +0 -0
  97. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/db/client_db.py +0 -0
  98. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/db/sched_db.py +0 -0
  99. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/db/tm_db.py +0 -0
  100. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/db/wfm_db.py +0 -0
  101. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/deps/__init__.py +0 -0
  102. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/deps/celery_manager.py +0 -0
  103. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/deps/container_manager.py +0 -0
  104. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/deps/redis_manager.py +0 -0
  105. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/expr.py +0 -0
  106. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/gdb/DESIGN.md +0 -0
  107. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/gdb/__init__.py +0 -0
  108. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/gdb/gdb_driver.py +0 -0
  109. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/gdb/generate_graph.py +0 -0
  110. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/gdb/neo4j_cypher.py +0 -0
  111. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/integration/__init__.py +0 -0
  112. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/integration/generated_workflows.py +0 -0
  113. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/integration_test.py +0 -0
  114. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/log.py +0 -0
  115. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/parser/.gitignore +0 -0
  116. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/parser/README.md +0 -0
  117. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/parser/__init__.py +0 -0
  118. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/paths.py +0 -0
  119. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/states.py +0 -0
  120. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/tab_completion.py +0 -0
  121. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/validation.py +0 -0
  122. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/wf_interface.py +0 -0
  123. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/wf_profiler.py +0 -0
  124. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/worker/README.md +0 -0
  125. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/worker/__init__.py +0 -0
  126. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/worker/lsf_worker.py +0 -0
  127. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/worker/simple_worker.py +0 -0
  128. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/worker/worker.py +0 -0
  129. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/common/worker_interface.py +0 -0
  130. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cloud_templates/dora.jinja +0 -0
  131. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cloud_templates/dora.yaml +0 -0
  132. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/README.md +0 -0
  133. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/README.md +0 -0
  134. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/blast/README.md +0 -0
  135. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/blast/blast.yml +0 -0
  136. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/blast/blast_output.cwl +0 -0
  137. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/blast/blast_output_err.cwl +0 -0
  138. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/blast/blast_split.cwl +0 -0
  139. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/blast/blast_wf.cwl +0 -0
  140. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/blast/blast_worker001.cwl +0 -0
  141. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/blast/blast_worker002.cwl +0 -0
  142. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/blast/input/small.fasta +0 -0
  143. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cat-grep-fail/README.md +0 -0
  144. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cat-grep-fail/cat.cwl +0 -0
  145. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cat-grep-fail/grep0.cwl +0 -0
  146. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cat-grep-fail/grep1.cwl +0 -0
  147. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cat-grep-fail/input.yml +0 -0
  148. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cat-grep-fail/lorem.txt +0 -0
  149. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cat-grep-fail/tar.cwl +0 -0
  150. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cat-grep-fail/workflow.cwl +0 -0
  151. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cgt-2branches/README.txt +0 -0
  152. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cgt-2branches/cat.cwl +0 -0
  153. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cgt-2branches/cat2.cwl +0 -0
  154. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cgt-2branches/grep0.cwl +0 -0
  155. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cgt-2branches/grep1.cwl +0 -0
  156. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cgt-2branches/grep2.cwl +0 -0
  157. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cgt-2branches/grep3.cwl +0 -0
  158. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cgt-2branches/input.yml +0 -0
  159. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cgt-2branches/lorem.txt +0 -0
  160. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cgt-2branches/tar.cwl +0 -0
  161. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cgt-2branches/tar2.cwl +0 -0
  162. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/cgt-2branches/workflow.cwl +0 -0
  163. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ci/README.md +0 -0
  164. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ci/clamr.cwl +0 -0
  165. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ci/clamr_job.json +0 -0
  166. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ci/clamr_job.yml +0 -0
  167. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ci/clamr_wf.cwl +0 -0
  168. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ci/ffmpeg.cwl +0 -0
  169. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-build_script/Dockerfile.clamr-ffmpeg +0 -0
  170. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-build_script/README.md +0 -0
  171. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-build_script/clamr.cwl +0 -0
  172. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-build_script/clamr_job.json +0 -0
  173. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-build_script/clamr_job.yml +0 -0
  174. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-build_script/clamr_wf.cwl +0 -0
  175. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-build_script/ffmpeg.cwl +0 -0
  176. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-build_script/post_run.sh +0 -0
  177. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-build_script/pre_run.sh +0 -0
  178. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-validate_script/Dockerfile.clamr-ffmpeg +0 -0
  179. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-validate_script/README.md +0 -0
  180. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-validate_script/clamr.cwl +0 -0
  181. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-validate_script/clamr_job.json +0 -0
  182. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-validate_script/clamr_job.yml +0 -0
  183. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-validate_script/clamr_wf.cwl +0 -0
  184. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-validate_script/ffmpeg.cwl +0 -0
  185. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-validate_script/post_run.sh +0 -0
  186. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-ffmpeg-validate_script/pre_run.sh +0 -0
  187. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf/README.md +0 -0
  188. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf/clamr.cwl +0 -0
  189. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf/clamr_job.json +0 -0
  190. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf/clamr_job.yml +0 -0
  191. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf/clamr_wf.cwl +0 -0
  192. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf/ffmpeg.cwl +0 -0
  193. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-chicoma/README.md +0 -0
  194. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-chicoma/clamr.cwl +0 -0
  195. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-chicoma/clamr_job.json +0 -0
  196. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-chicoma/clamr_job.yml +0 -0
  197. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-chicoma/clamr_wf.cwl +0 -0
  198. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-chicoma/ffmpeg.cwl +0 -0
  199. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-noyaml/README.md +0 -0
  200. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-noyaml/lsf-charliecloud/README.md +0 -0
  201. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-noyaml/lsf-charliecloud/cf-summit.cwl +0 -0
  202. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-noyaml/slurm-charliecloud/Dockerfile.clamr-lanl-x86_64 +0 -0
  203. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-noyaml/slurm-charliecloud/README.md +0 -0
  204. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-noyaml/slurm-charliecloud/cf-darwin.cwl +0 -0
  205. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-noyaml/slurm-charliecloud/cf-no-owrite.cwl +0 -0
  206. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-noyaml/slurm-charliecloud/cf.cwl +0 -0
  207. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-noyaml/slurm-charliecloud/copyContainer_containerName.cwl +0 -0
  208. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-noyaml/slurm-charliecloud/dockerFile_containerName.cwl +0 -0
  209. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-noyaml/slurm-charliecloud/dockerPull.cwl +0 -0
  210. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-noyaml/slurm-singularity/README.md +0 -0
  211. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-noyaml/slurm-singularity/cf-singularity.cwl +0 -0
  212. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-singularity/README.md +0 -0
  213. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-singularity/clamr.cwl +0 -0
  214. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-singularity/clamr_job.json +0 -0
  215. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-singularity/clamr_job.yml +0 -0
  216. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-singularity/clamr_wf.cwl +0 -0
  217. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-singularity/ffmpeg.cwl +0 -0
  218. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-summit/README.md +0 -0
  219. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-summit/clamr.cwl +0 -0
  220. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-summit/clamr_job.json +0 -0
  221. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-summit/clamr_job.yml +0 -0
  222. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-summit/clamr_wf.cwl +0 -0
  223. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-summit/ffmpeg.cwl +0 -0
  224. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-use-container/README.md +0 -0
  225. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-use-container/clamr.cwl +0 -0
  226. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-use-container/clamr_job.json +0 -0
  227. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-use-container/clamr_job.yml +0 -0
  228. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-use-container/clamr_wf.cwl +0 -0
  229. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/clamr-wf-use-container/ffmpeg.cwl +0 -0
  230. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/lulesh-mpi/lulesh.cwl +0 -0
  231. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/lulesh-mpi/lulesh.yml +0 -0
  232. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/lulesh-mpi-multi-file/lulesh.cwl +0 -0
  233. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/lulesh-mpi-multi-file/lulesh_job.yml +0 -0
  234. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/lulesh-mpi-multi-file/lulesh_wf.cwl +0 -0
  235. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/nwchem-mpi/README.md +0 -0
  236. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/nwchem-mpi/nwchem.cwl +0 -0
  237. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/nwchem-mpi/nwchem.yml +0 -0
  238. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/nwchem-mpi/nwchem_bin.cwl +0 -0
  239. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant/graph.cwl +0 -0
  240. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant/pennant.yml +0 -0
  241. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant/pennant_1_node.cwl +0 -0
  242. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant/pennant_2_node.cwl +0 -0
  243. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant/pennant_4_node.cwl +0 -0
  244. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant/pennant_wf.cwl +0 -0
  245. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant-build/Dockerfile.pennant-flux-x86_64 +0 -0
  246. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant-build/Dockerfile.pennant-graph-x86_64 +0 -0
  247. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant-build/graph.cwl +0 -0
  248. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant-build/graph_pennant.py +0 -0
  249. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant-build/graph_pennant.sh +0 -0
  250. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant-build/pennant.yml +0 -0
  251. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant-build/pennant_1_node.cwl +0 -0
  252. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant-build/pennant_2_node.cwl +0 -0
  253. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant-build/pennant_4_node.cwl +0 -0
  254. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant-build/pennant_8_node.cwl +0 -0
  255. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pennant-build/pennant_wf.cwl +0 -0
  256. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/pytest.ini +0 -0
  257. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/simple-workflows/README.md +0 -0
  258. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/simple-workflows/cancel.cwl +0 -0
  259. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/simple-workflows/grep-wordcount/README.md +0 -0
  260. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/simple-workflows/grep-wordcount/gc-nc.cwl +0 -0
  261. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/simple-workflows/grep-wordcount/gc.cwl +0 -0
  262. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/bee_workflows/simple-workflows/grep-wordcount/lorem.txt +0 -0
  263. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/README.md +0 -0
  264. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/builder/dockerFile.cwl +0 -0
  265. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/builder/dockerPull.cwl +0 -0
  266. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/grep-wordcount/gc.cwl +0 -0
  267. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/grep-wordcount/lorem.txt +0 -0
  268. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/helloworld.cwl +0 -0
  269. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/helloworld_input.yaml +0 -0
  270. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/example-1/DAG_example-1.png +0 -0
  271. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/example-1/README.md +0 -0
  272. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/example-1/add.cwl +0 -0
  273. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/example-1/add_multiply_example_workflow.cwl +0 -0
  274. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/example-1/add_step1.py +0 -0
  275. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/example-1/isolated test.cwl +0 -0
  276. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/example-1/job.yaml +0 -0
  277. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/example-1/multiply.cwl +0 -0
  278. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/example-1/multiply_step2.py +0 -0
  279. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/example-1/workflow_generater_python.py +0 -0
  280. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/README.md +0 -0
  281. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/decision_tree.py +0 -0
  282. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/decision_tree_output.txt +0 -0
  283. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/decision_tree_tool.cwl +0 -0
  284. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/expectedValue.txt +0 -0
  285. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/hiring1.txt +0 -0
  286. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/linear_regress_output.txt +0 -0
  287. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/linear_regression.py +0 -0
  288. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/machinelearning_pipeline.cwl +0 -0
  289. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/out.PNG +0 -0
  290. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/predict_code.py +0 -0
  291. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/predict_tool.cwl +0 -0
  292. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/read_dataset.py +0 -0
  293. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/read_dataset_tool.cwl +0 -0
  294. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/cwl/cwl_validation/ml-workflow/machine_learning/regress_tool.cwl +0 -0
  295. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/Dockerfile.builder_demo +0 -0
  296. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/Dockerfile.clamr-ffmpeg +0 -0
  297. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/Dockerfile.clamr-lanl-x86_64 +0 -0
  298. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/Dockerfile.clamr-ppc64le +0 -0
  299. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/Dockerfile.comd-flux-x86_64 +0 -0
  300. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/Dockerfile.deb9ompi-x86_64 +0 -0
  301. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/Dockerfile.lulesh-x86_64 +0 -0
  302. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/Dockerfile.neo4j +0 -0
  303. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/Dockerfile.nwchem-x86_64 +0 -0
  304. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/Dockerfile.pennant-flux-x86_64 +0 -0
  305. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/Dockerfile.vaspompi-x86_64 +0 -0
  306. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/README.md +0 -0
  307. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/comd-pmix-support/Dockerfile.comd-x86_64-wpmix +0 -0
  308. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/comd-pmix-support/Dockerfile.debian +0 -0
  309. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/comd-pmix-support/Dockerfile.openmpi-3.1.5 +0 -0
  310. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/comd-pmix-support/README.md +0 -0
  311. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/comd-pmix-support/dont-init-ucx-on-intel-cray.patch +0 -0
  312. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/pennant-graph/Dockerfile.pennant-graph-x86_64 +0 -0
  313. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/pennant-graph/graph_pennant.py +0 -0
  314. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/data/dockerfiles/pennant-graph/graph_pennant.sh +0 -0
  315. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/remote/__init__.py +0 -0
  316. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/remote/remote.py +0 -0
  317. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/scheduler/README.md +0 -0
  318. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/scheduler/__init__.py +0 -0
  319. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/scheduler/algorithms.py +0 -0
  320. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/scheduler/resource_allocation.py +0 -0
  321. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/scheduler/scheduler.py +0 -0
  322. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/scheduler/scheduler.yaml +0 -0
  323. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/scheduler/serializable.py +0 -0
  324. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/scheduler/task.py +0 -0
  325. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/task_manager/__init__.py +0 -0
  326. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/task_manager/task_actions.py +0 -0
  327. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/task_manager/task_manager.py +0 -0
  328. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/task_manager/task_submit.py +0 -0
  329. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/task_manager/utils.py +0 -0
  330. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/42.tgz +0 -0
  331. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/README.md +0 -0
  332. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/cf.cwl +0 -0
  333. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/clamr-wf/clamr.cwl +0 -0
  334. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/clamr-wf/clamr_job.json +0 -0
  335. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/clamr-wf/clamr_job.yml +0 -0
  336. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/clamr-wf/clamr_wf.cwl +0 -0
  337. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/clamr-wf/ffmpeg.cwl +0 -0
  338. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/clamr-wf/mv_script.cwl +0 -0
  339. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/clamr-wf/mv_script.sh +0 -0
  340. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/clamr-wf.tgz +0 -0
  341. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/cwl_files/cat-grep-tar.cwl +0 -0
  342. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/cwl_files/cat-grep-tar.yml +0 -0
  343. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/cwl_files/clamr.cwl +0 -0
  344. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/cwl_files/clamr.yml +0 -0
  345. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/cwl_files/comd.cwl +0 -0
  346. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/cwl_files/comd.yml +0 -0
  347. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/cwl_files/task-req.cwl +0 -0
  348. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/cwl_files/task-req.yml +0 -0
  349. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/gdb.py +0 -0
  350. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_charliecloud_driver.py +0 -0
  351. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_cloud.py +0 -0
  352. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_config_driver.py +0 -0
  353. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_config_utils.py +0 -0
  354. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_config_validator.py +0 -0
  355. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_container_path.py +0 -0
  356. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_cwl.py +0 -0
  357. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_db_client.py +0 -0
  358. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_db_sched.py +0 -0
  359. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_db_tm.py +0 -0
  360. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_neo4j_cypher.py +0 -0
  361. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_parser.py +0 -0
  362. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_remote.py +0 -0
  363. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_remote_client.py +0 -0
  364. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_scheduler.py +0 -0
  365. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_scheduler_resource_allocation.py +0 -0
  366. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_scheduler_rest.py +0 -0
  367. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_wf_interface.py +0 -0
  368. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/tests/test_wf_update.py +0 -0
  369. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/wf_manager/__init__.py +0 -0
  370. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/wf_manager/resources/__init__.py +0 -0
  371. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/wf_manager/resources/wf_list.py +0 -0
  372. {hpc_beeflow-0.1.11.dev2 → hpc_beeflow-0.1.11.dev4}/beeflow/wf_manager/wf_manager.py +0 -0
@@ -1,7 +1,8 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.1
2
2
  Name: hpc-beeflow
3
- Version: 0.1.11.dev2
3
+ Version: 0.1.11.dev4
4
4
  Summary: A software package for containerizing HPC applications and managing job workflows
5
+ Home-page: https://github.com/lanl/BEE
5
6
  Keywords: bee,hpc,workflow,cluster,computing
6
7
  Author: BEE-LANL Dev Team
7
8
  Author-email: bee-dev@lanl.gov
@@ -19,7 +20,6 @@ Classifier: Programming Language :: Python :: 3.9
19
20
  Classifier: Programming Language :: Python :: 3.10
20
21
  Classifier: Programming Language :: Python :: 3.11
21
22
  Classifier: Programming Language :: Python :: 3.12
22
- Classifier: Programming Language :: Python :: 3.13
23
23
  Classifier: Programming Language :: Python :: Implementation :: CPython
24
24
  Classifier: Topic :: Scientific/Engineering
25
25
  Classifier: Topic :: System :: Clustering
@@ -49,6 +49,7 @@ Requires-Dist: python-heatclient (>=3.1.0,<4.0.0) ; extra == "cloud-extras"
49
49
  Requires-Dist: python-openstackclient (>=6.0.0,<7.0.0) ; extra == "cloud-extras"
50
50
  Requires-Dist: requests (>=2.32.3,<3.0.0)
51
51
  Requires-Dist: requests-unixsocket2 (>=0.4.2,<0.5.0)
52
+ Requires-Dist: tabulate (>=0.9.0,<0.10.0)
52
53
  Requires-Dist: typer (>=0.5.0,<0.6.0)
53
54
  Requires-Dist: uvicorn (==0.27.1)
54
55
  Project-URL: Repository, https://github.com/lanl/BEE
@@ -89,11 +90,27 @@ Containers provide many benefits:
89
90
  BEE Sites
90
91
  =========
91
92
 
92
- * Documentation: `https://lanl.github.io/BEE/ <https://lanl.github.io/BEE/>`_
93
-
94
93
  * Github: `https://github.com/lanl/BEE <https://github.com/lanl/BEE>`_
95
94
 
96
95
 
96
+ * PyPi: `https://pypi.org/project/hpc-beeflow/ <https://pypi.org/project/hpc-beeflow/>`_
97
+
98
+ .. list-table::
99
+ :header-rows: 1
100
+ :widths: 20 25 55
101
+
102
+ * - Purpose
103
+ - Git Tag
104
+ - Documentation
105
+
106
+ * - Stable release
107
+ - ``0.1.10``
108
+ - `https://lanl.github.io/BEE/ <https://lanl.github.io/BEE/>`__
109
+ * - Pre-release
110
+ - ``0.1.11dev3``
111
+ - `https://lanl.github.io/BEE/0.1.11dev3/ <https://lanl.github.io/BEE/0.1.11dev3/>`__
112
+
113
+
97
114
  Contact
98
115
  =======
99
116
 
@@ -114,6 +131,7 @@ Contributors:
114
131
  * Ragini Gupta - `raginigupta6 <https://github.com/raginigupta6>`_
115
132
  * Aaron R Hall - `arhall0 <https://github.com/arhall0>`_
116
133
  * Leah Howell - `Leahh02 <https://github.com/Leahh02>`_
134
+ * Lilikoi Latimer - `lilikoi-l <https://github.com/lilikoi-l>`_
117
135
  * Andres Quan - `aquan9 <https://github.com/aquan9>`_
118
136
  * Quincy Wofford - `qwofford <https://github.com/qwofford>`_
119
137
  * Tim Randles - `trandles-lanl <https://github.com/trandles-lanl>`_
@@ -33,11 +33,27 @@ Containers provide many benefits:
33
33
  BEE Sites
34
34
  =========
35
35
 
36
- * Documentation: `https://lanl.github.io/BEE/ <https://lanl.github.io/BEE/>`_
37
-
38
36
  * Github: `https://github.com/lanl/BEE <https://github.com/lanl/BEE>`_
39
37
 
40
38
 
39
+ * PyPi: `https://pypi.org/project/hpc-beeflow/ <https://pypi.org/project/hpc-beeflow/>`_
40
+
41
+ .. list-table::
42
+ :header-rows: 1
43
+ :widths: 20 25 55
44
+
45
+ * - Purpose
46
+ - Git Tag
47
+ - Documentation
48
+
49
+ * - Stable release
50
+ - ``0.1.10``
51
+ - `https://lanl.github.io/BEE/ <https://lanl.github.io/BEE/>`__
52
+ * - Pre-release
53
+ - ``0.1.11dev3``
54
+ - `https://lanl.github.io/BEE/0.1.11dev3/ <https://lanl.github.io/BEE/0.1.11dev3/>`__
55
+
56
+
41
57
  Contact
42
58
  =======
43
59
 
@@ -58,6 +74,7 @@ Contributors:
58
74
  * Ragini Gupta - `raginigupta6 <https://github.com/raginigupta6>`_
59
75
  * Aaron R Hall - `arhall0 <https://github.com/arhall0>`_
60
76
  * Leah Howell - `Leahh02 <https://github.com/Leahh02>`_
77
+ * Lilikoi Latimer - `lilikoi-l <https://github.com/lilikoi-l>`_
61
78
  * Andres Quan - `aquan9 <https://github.com/aquan9>`_
62
79
  * Quincy Wofford - `qwofford <https://github.com/qwofford>`_
63
80
  * Tim Randles - `trandles-lanl <https://github.com/trandles-lanl>`_
@@ -27,6 +27,7 @@ import requests
27
27
  import typer
28
28
  import yaml
29
29
 
30
+ from tabulate import tabulate
30
31
  from beeflow.common import config_driver
31
32
  from beeflow.common.cli import NaturalOrderGroup
32
33
  from beeflow.common.connection import Connection
@@ -572,12 +573,35 @@ def query(wf_id: str = typer.Argument(..., callback=match_short_id)):
572
573
  tasks_status = resp.json()['tasks_status']
573
574
  wf_status = resp.json()['wf_status']
574
575
  typer.echo(wf_status)
575
- for _task_id, task_name, task_state in tasks_status:
576
+
577
+ scheduler = config_driver.BeeConfig.get('DEFAULT','workload_scheduler').lower()
578
+ if scheduler == 'slurm' and config_driver.BeeConfig.get('slurm','use_commands'):
579
+ section = 'slurm command attributes'
580
+ elif scheduler == 'flux':
581
+ section = 'flux attributes'
582
+ else:
583
+ section= 'slurm attributes'
584
+
585
+ attrs = config_driver.BeeConfig.get(section, 'attributes')
586
+ logging.info(attrs)
587
+ if isinstance(attrs,str):
588
+ attrs = [attr.strip() for attr in attrs.split(',') if attr.strip()]
589
+
590
+ attr_data=[]
591
+ for _task_id, task_name, task_state,metadata in tasks_status:
576
592
  if wf_status == 'No Start':
577
593
  typer.echo(f'{task_name}')
578
- else:
579
- typer.echo(f'{task_name}--{task_state}')
580
-
594
+ continue
595
+
596
+ output_fields=[task_name,task_state]
597
+ for attr in attrs:
598
+ value = metadata.get(attr)
599
+ if value is not None:
600
+ output_fields.append(str(value))
601
+ attr_data.append(output_fields)
602
+ headers = ['task_name','task_state'] + attrs
603
+ if attr_data:
604
+ typer.echo(tabulate(attr_data,headers=headers,tablefmt="fancy grid"))
581
605
  logging.info('Query workflow: {resp.text}')
582
606
  return wf_status, tasks_status
583
607
 
@@ -739,14 +763,21 @@ def dag(wf_id: str = typer.Argument(..., callback=match_short_id),
739
763
  typer.secho("Workflow has been archived. All new DAGs will look the same as the one "
740
764
  "in the archive directory.",
741
765
  fg=typer.colors.MAGENTA)
742
- wf_utils.export_dag(wf_id, output_dir, graphmls_dir, no_dag_dir)
766
+ dot_avail = wf_utils.export_dag(wf_id, output_dir, graphmls_dir, no_dag_dir)
743
767
  else:
744
768
  wf_dir = wf_utils.get_workflow_dir(wf_id)
745
769
  graphmls_dir = wf_dir + '/graphmls'
746
770
  os.makedirs(graphmls_dir, exist_ok=True)
747
- wf_utils.export_dag(wf_id, output_dir, graphmls_dir, no_dag_dir, wf_dir)
748
- typer.secho(f"DAG for workflow {_short_id(wf_id)} has been exported successfully.",
749
- fg=typer.colors.GREEN)
771
+ dot_avail = wf_utils.export_dag(wf_id, output_dir, graphmls_dir, no_dag_dir, wf_dir)
772
+ if dot_avail:
773
+ typer.secho(f"DAG for workflow {_short_id(wf_id)} has been exported successfully.",
774
+ fg=typer.colors.GREEN)
775
+ else:
776
+ typer.secho(
777
+ f"GraphML for workflow {_short_id(wf_id)} has been exported successfully."
778
+ "(Graphviz not found, so no rendered DAG was produced.)",
779
+ fg=typer.colors.GREEN
780
+ )
750
781
 
751
782
 
752
783
  @app.callback(invoke_without_command=True)
@@ -18,7 +18,7 @@ import datetime
18
18
  import time
19
19
  import importlib.metadata
20
20
  from pathlib import Path
21
-
21
+ from configparser import ConfigParser
22
22
  import daemon
23
23
  import typer
24
24
 
@@ -35,6 +35,45 @@ from beeflow.common.deps import container_manager
35
35
  from beeflow.common.deps import neo4j_manager
36
36
  from beeflow.common.deps import redis_manager
37
37
 
38
+ from beeflow.common.config_driver import USERCONFIG_FILE
39
+
40
+ def patch_attribute_section():
41
+ """Replace the default attributes in the config file based on the scheduler"""
42
+ if not os.path.exists(USERCONFIG_FILE):
43
+ return
44
+
45
+ config= ConfigParser()
46
+ with open(USERCONFIG_FILE, encoding='utf-8') as f:
47
+ config.read_file(f)
48
+
49
+ sched = config.get('DEFAULT', 'workload_scheduler', fallback='Slurm')
50
+ if sched == 'Flux':
51
+ section = 'flux attributes'
52
+ default_attrs = 'queue,runtime,nodelist'
53
+ elif sched == 'Slurm':
54
+ use_cmds = config.get('slurm', 'use_commands', fallback='True').strip().lower() == 'true'
55
+ if use_cmds:
56
+ section = 'slurm command attributes'
57
+ default_attrs = 'Partition,RunTime,NodeList'
58
+ else:
59
+ section = 'slurm attributes'
60
+ default_attrs = 'partition,nodes'
61
+ else:
62
+ return
63
+
64
+ if not config.has_section(section):
65
+ config.add_section(section)
66
+ config.set(section, 'attributes', default_attrs)
67
+ else:
68
+ cur_attrs = config.get(section, 'attributes', fallback='').strip()
69
+ if not cur_attrs:
70
+ config.set(section, 'attributes', default_attrs)
71
+ else:
72
+ return
73
+
74
+ with open(USERCONFIG_FILE, 'w', encoding='utf-8') as f:
75
+ config.write(f)
76
+
38
77
 
39
78
  REPO_PATH = Path(*Path(__file__).parts[:-3])
40
79
 
@@ -344,6 +383,9 @@ class Beeflow:
344
383
  def loop(self):
345
384
  """Run the main loop."""
346
385
  print(f'Running on {socket.gethostname()}')
386
+ # Check for Graphviz:
387
+ if not shutil.which("dot"):
388
+ print('Graphviz was not found on PATH.')
347
389
  self.mgr.run(self.base_components)
348
390
  with cli_connection.server(paths.beeflow_socket()) as server:
349
391
  while not self.quit:
@@ -395,7 +437,6 @@ def daemonize(mgr, base_components):
395
437
  umask=0o002):
396
438
  Beeflow(mgr, base_components).loop()
397
439
 
398
-
399
440
  app = typer.Typer(no_args_is_help=True)
400
441
 
401
442
 
@@ -405,6 +446,7 @@ def start(foreground: bool = typer.Option(False, '--foreground', '-F',
405
446
  '-B', help='allow to run on a backend node'), remote: bool = typer.Option(False,
406
447
  '--remote', '-R', help='allow remote connection')):
407
448
  """Start all BEE components."""
449
+ patch_attribute_section()
408
450
  start_hn = socket.gethostname() # hostname when beeflow starts
409
451
  if bee_client.get_hostname() == "" and bee_client.check_backend_status() == "":
410
452
  bee_client.setup_hostname(start_hn) # add to client db
@@ -427,6 +469,7 @@ def start(foreground: bool = typer.Option(False, '--foreground', '-F',
427
469
  sock_path = paths.beeflow_socket()
428
470
  if bc.get('DEFAULT', 'workload_scheduler') == 'Slurm' and not need_slurmrestd():
429
471
  warn('Not using slurmrestd. Command-line interface will be used.')
472
+
430
473
  # Note: there is a possible race condition here, however unlikely
431
474
  if os.path.exists(sock_path):
432
475
  # Try to contact for a status
@@ -45,47 +45,53 @@ class CharliecloudBuildDriver(ContainerBuildDriver):
45
45
  :param task: the task to build for
46
46
  :type task: Task
47
47
  """
48
- # Store build container archive pased on config file or relative to bee_workdir if not set.
49
- container_archive = bc.get('builder', 'container_archive')
50
- self.container_archive = bc.resolve_path(container_archive)
51
- os.makedirs(self.container_archive, exist_ok=True)
52
- # Deploy build tarballs relative to /var/tmp/username/beeflow by default
53
- deployed_image_root = bc.get('builder', 'deployed_image_root')
54
- # Make sure conf_file path exists
55
- os.makedirs(deployed_image_root, exist_ok=True)
56
- # Make sure path is absolute
57
- deployed_image_root = bc.resolve_path(deployed_image_root)
58
- self.deployed_image_root = deployed_image_root
59
- os.makedirs(self.deployed_image_root, exist_ok=True)
60
- # Set container-relative output directory based on BeeConfig, or use '/'
61
- container_output_path = bc.get('builder', 'container_output_path')
62
- self.container_output_path = container_output_path
63
- # record that a Charliecloud builder was used
64
- # bc.modify_section('user', 'builder', {'container_type': 'charliecloud'})
65
- self.task = task
66
- self.docker_image_id = None
67
- self.container_name = None
68
- docker_requirements = set()
69
- try:
70
- requirement_docker_requirements = self.task.requirements['DockerRequirement'].keys()
71
- docker_requirements = docker_requirements.union(requirement_docker_requirements)
72
- req_string = f'{set(requirement_docker_requirements)}'
73
- log.info(f'task {self.task.id} requirement DockerRequirements: {req_string}')
74
- except (TypeError, KeyError):
75
- log.info(f'task {self.task.name} {self.task.id} no DockerRequirements in requirement')
76
- try:
77
- hint_docker_requirements = self.task.hints['DockerRequirement'].keys()
78
- docker_requirements = docker_requirements.union(hint_docker_requirements)
79
- hint_str = f'{set(hint_docker_requirements)}'
80
- log.info(f'task {self.task.name} {self.task.id} hint DockerRequirements: {hint_str}')
81
- except (TypeError, KeyError):
82
- log.info(f'task {self.task.name} {self.task.id} hints has no DockerRequirements')
83
- log.info(f'task {self.task.id} union DockerRequirements : {docker_requirements}')
84
- exec_superset = self.resolve_priority()
85
- self.exec_list = [i for i in exec_superset if i[1] in docker_requirements]
86
- log_exec_list = [i[1] for i in self.exec_list]
87
- log.info(f'task {self.task.id} DockerRequirement execution order will be: {log_exec_list}')
88
- log.info('Execution order pre-empts hint/requirement status.')
48
+ has_container = task.get_full_requirement('DockerRequirement')
49
+ if has_container: # only try to build if task has a container
50
+ # Store build container archive pased on config file or relative to bee_workdir
51
+ # if not set.
52
+ container_archive = bc.get('builder', 'container_archive')
53
+ self.container_archive = bc.resolve_path(container_archive)
54
+ os.makedirs(self.container_archive, exist_ok=True)
55
+ # Deploy build tarballs relative to /var/tmp/username/beeflow by default
56
+ deployed_image_root = bc.get('builder', 'deployed_image_root')
57
+ # Make sure conf_file path exists
58
+ os.makedirs(deployed_image_root, exist_ok=True)
59
+ # Make sure path is absolute
60
+ deployed_image_root = bc.resolve_path(deployed_image_root)
61
+ self.deployed_image_root = deployed_image_root
62
+ os.makedirs(self.deployed_image_root, exist_ok=True)
63
+ # Set container-relative output directory based on BeeConfig, or use '/'
64
+ container_output_path = bc.get('builder', 'container_output_path')
65
+ self.container_output_path = container_output_path
66
+ # record that a Charliecloud builder was used
67
+ # bc.modify_section('user', 'builder', {'container_type': 'charliecloud'})
68
+ self.task = task
69
+ self.docker_image_id = None
70
+ self.container_name = None
71
+ docker_requirements = set()
72
+ try:
73
+ req_docker_requirements = self.task.requirements['DockerRequirement'].keys()
74
+ docker_requirements = docker_requirements.union(req_docker_requirements)
75
+ req_string = f'{set(req_docker_requirements)}'
76
+ log.info(f'task {self.task.id} requirement DockerRequirements: {req_string}')
77
+ except (TypeError, KeyError):
78
+ log.info(f'task {self.task.name} {self.task.id} '
79
+ 'no DockerRequirements in requirement')
80
+ try:
81
+ hint_docker_requirements = self.task.hints['DockerRequirement'].keys()
82
+ docker_requirements = docker_requirements.union(hint_docker_requirements)
83
+ hint_str = f'{set(hint_docker_requirements)}'
84
+ log.info(f'task {self.task.name} {self.task.id} hint '
85
+ f'DockerRequirements: {hint_str}')
86
+ except (TypeError, KeyError):
87
+ log.info(f'task {self.task.name} {self.task.id} hints has no DockerRequirements')
88
+ log.info(f'task {self.task.id} union DockerRequirements : {docker_requirements}')
89
+ exec_superset = self.resolve_priority()
90
+ self.exec_list = [i for i in exec_superset if i[1] in docker_requirements]
91
+ log_exec_list = [i[1] for i in self.exec_list]
92
+ log.info(f'task {self.task.id} DockerRequirement execution order '
93
+ f'will be: {log_exec_list}')
94
+ log.info('Execution order pre-empts hint/requirement status.')
89
95
 
90
96
  def get_docker_req(self, docker_req_param):
91
97
  """Get dockerRequirement, prioritizing requirements over hints.
@@ -314,6 +314,55 @@ VALIDATOR.option('job', 'default_qos', validator=lambda val: val.strip(), prompt
314
314
  VALIDATOR.option('job', 'default_reservation', validator=lambda val: val.strip(), prompt=True,
315
315
  default='', info='default reservation to run jobs on (leave blank if none)')
316
316
 
317
+ def validate_attributes(val):
318
+ """Ensures the atributes are stored as a comma-separated string in"""
319
+ if isinstance(val, str):
320
+ parts = [p.strip() for p in val.split(',') if p.strip()]
321
+ elif isinstance(val, (list, tuple)):
322
+ parts = [str(v).strip() for v in val if str(v).strip()]
323
+ else:
324
+ raise ValueError("Expected a comma-separated string or list of strings.")
325
+ return ",".join(parts)
326
+
327
+ slurm_command_attr= [
328
+ "Account","AccrueTime","CPUs_Task","Command","EligibleTime",
329
+ "EndTime","ExitCode","JobId","JobName","JobState",
330
+ "NodeList","NumCPUs","NumNodes","NumTasks","Partition",
331
+ "Priority","QOS","Reason","RunTime","StartTime","StdErr",
332
+ "StdIn","StdOut","SubmitTime","TimeLimit","UserId"
333
+ ]
334
+
335
+ slurm_attr = [
336
+ "account","accrue_time","allocating_node","cluster",
337
+ "command","eligible_time","end_time","exit_code_number",
338
+ "failed_node","job_id","job_state","name","nodes",
339
+ "partition","qos","scheduled_nodes","standard_error",
340
+ "standard_input","standard_output","start_time",
341
+ "submit_time","tres_alloc_str"
342
+ ]
343
+
344
+ flux_attr = [
345
+ "t_submit", "t_run", "t_inactive", "t_remaining","runtime",
346
+ "name", "id", "queue", "ntasks", "ncores", "nnodes", "nodelist","status",
347
+ "waitstatus", "returncode"
348
+ ]
349
+
350
+ #Job attributes
351
+ VALIDATOR.section('slurm attributes',info='Available task information for the slurm scheduler\n',
352
+ depends_on=('slurm', 'use_commands', 'False'))
353
+ VALIDATOR.option('slurm attributes','attributes',validator=validate_attributes,prompt=False,
354
+ default='partition,nodes',info='Enter task attributes (comma-separated)')
355
+
356
+ VALIDATOR.section('slurm command attributes',info='Available task information for sacct\n',
357
+ depends_on=('slurm', 'use_commands', 'True'))
358
+ VALIDATOR.option('slurm command attributes','attributes',validator=validate_attributes,
359
+ prompt=False,default='Partition,RunTime,NodeList',
360
+ info='Enter task attributes (comma-separated)')
361
+
362
+ VALIDATOR.section('flux attributes', info = 'Available task information for the flux scheduler\n',
363
+ depends_on=('DEFAULT', 'workload_scheduler', 'Flux'))
364
+ VALIDATOR.option('flux attributes','attributes',validator=validate_attributes,prompt=False,
365
+ default='queue,runtime,nodelist',info='Enter task attributes (comma-separated).')
317
366
 
318
367
  def validate_chrun_opts(opts):
319
368
  """Ensure that chrun_opts don't contain options that'll conflict with BEE."""
@@ -387,8 +436,9 @@ class ConfigGenerator:
387
436
  self.validator = validator
388
437
  self.sections = {}
389
438
 
390
- def choose_values(self, interactive=False, flux=False):
439
+ def choose_values(self, interactive=False, flux=False, attributes=False):
391
440
  """Choose configuration values based on user input."""
441
+ print("[DEBUG] choose_values() started")
392
442
  dirname = os.path.dirname(self.fname)
393
443
  if dirname:
394
444
  os.makedirs(dirname, exist_ok=True)
@@ -420,6 +470,20 @@ class ConfigGenerator:
420
470
  if flux is True and opt_name == 'workload_scheduler':
421
471
  this_default = "Flux"
422
472
  option.prompt = False
473
+ if attributes and not interactive and opt_name == 'attributes':
474
+ print(f'\nAvailable attributes for [{sec_name}]:')
475
+ if sec_name == 'slurm attributes':
476
+ attr_list = slurm_attr
477
+ elif sec_name =='slurm command attributes':
478
+ attr_list = slurm_command_attr
479
+ else:
480
+ attr_list = flux_attr
481
+ print(attr_list)
482
+ value = self._input_loop(opt_name, option)
483
+ validated = option.validate(value)
484
+ self.sections[sec_name][opt_name] = validated
485
+ continue
486
+
423
487
  # Check for a default value
424
488
  if (not interactive or option.prompt is False) and this_default is not None:
425
489
  value = option.validate(this_default)
@@ -455,7 +519,7 @@ class ConfigGenerator:
455
519
  value = None
456
520
  return value
457
521
 
458
- def save(self, interactive=False):
522
+ def save(self, interactive=False,attributes=False):
459
523
  """Save the config to a file."""
460
524
  print()
461
525
  print('The following configuration options were chosen:')
@@ -465,7 +529,7 @@ class ConfigGenerator:
465
529
  for opt_name in section:
466
530
  print(f'{opt_name} = {section[opt_name]}')
467
531
  print()
468
- if interactive:
532
+ if interactive or attributes:
469
533
  ans = input('Would you like to save this config? [y/n] ')
470
534
  if ans.lower() != 'y':
471
535
  print('Quitting without saving')
@@ -530,12 +594,12 @@ class AlterConfig:
530
594
  for option_name, option in options:
531
595
  if option_name == opt_name:
532
596
  # Validate the new value before changing
533
- option.validate(new_value)
534
- self.config[sec_name][opt_name] = new_value
597
+ validated = option.validate(new_value)
598
+ self.config[sec_name][opt_name] = validated
535
599
  # Track changes in attribute
536
600
  if sec_name not in self.changes:
537
601
  self.changes[sec_name] = {}
538
- self.changes[sec_name][opt_name] = new_value
602
+ self.changes[sec_name][opt_name] = validated
539
603
  return
540
604
 
541
605
  raise ValueError(f'Option {opt_name} not found in the validator for section {sec_name}.')
@@ -590,10 +654,12 @@ def info():
590
654
  def new(path: str = typer.Argument(default=USERCONFIG_FILE,
591
655
  help='Path to new config file'),
592
656
  interactive: bool = typer.Option(False, '--interactive', '-i',
593
- help='Whether or not to be prompted'
594
- + ' during config generation'),
657
+ help='Interactive session to generate config'),
595
658
  flux: bool = typer.Option(False, '--flux', '-f',
596
- help='Changes default scheduler to Flux')):
659
+ help='Changes default scheduler to Flux'),
660
+ attributes: bool = typer.Option(False, '--attributes', '-a',
661
+ help='Chooses task attributes to display'
662
+ 'for "beeflow query"')):
597
663
  """Create a new config file."""
598
664
  if os.path.exists(path):
599
665
  if not interactive or check_yes(f'Path "{path}" already exists.\n'
@@ -601,8 +667,9 @@ def new(path: str = typer.Argument(default=USERCONFIG_FILE,
601
667
  config_utils.backup(path)
602
668
  ConfigGenerator(path, VALIDATOR).choose_values(
603
669
  flux=flux,
604
- interactive=interactive
605
- ).save(interactive=interactive)
670
+ interactive=interactive,
671
+ attributes=attributes
672
+ ).save(interactive=interactive,attributes=attributes)
606
673
 
607
674
 
608
675
  @app.command()
@@ -25,6 +25,8 @@ def write_config(file_name, sections):
25
25
  print(file=fp)
26
26
  print(f'[{sec_name}]', file=fp)
27
27
  for opt_name, value in section.items():
28
+ if isinstance(value, (list, tuple)):
29
+ value = ",".join(str(v).strip() for v in value if str(v).strip())
28
30
  print(f'{opt_name} = {value}', file=fp)
29
31
  except FileNotFoundError:
30
32
  print('Configuration file does not exist!')
@@ -92,8 +92,10 @@ class ConfigValidator:
92
92
  return True
93
93
  if depends_on[0] not in conf or depends_on[1] not in conf[depends_on[0]]:
94
94
  return False
95
+ actual=str(conf[depends_on[0]][depends_on[1]])
96
+ expected=str(depends_on[2])
95
97
  # Value must match for the section to be valid
96
- return conf[depends_on[0]][depends_on[1]] == depends_on[2]
98
+ return actual.strip().lower()==expected.strip().lower()
97
99
 
98
100
  def is_section_valid(self, cur_conf, sec_name):
99
101
  """Determine if given the current configuration, sec_name is valid.
@@ -621,9 +621,8 @@ class CWL:
621
621
  self.steps = steps
622
622
 
623
623
  def dump_wf(self, path=None):
624
- """Dump the workflow. If no path is specified print to stdout."""
624
+ """Dump the workflow. If no path is specified return cwl file as a string."""
625
625
  cwl_dump = ruamel.yaml.comments.CommentedMap()
626
- # cwl_dump = {}
627
626
  cwl_dump.update(self.header.dump())
628
627
  cwl_dump.update(self.header.dump())
629
628
  cwl_dump.update(self.inputs.dump())
@@ -638,12 +637,10 @@ class CWL:
638
637
  if path:
639
638
  with open(f"{path}/{self.cwl_name}.cwl", "w", encoding="utf-8") as wf_file:
640
639
  print(wf_contents, file=wf_file)
641
- else:
642
- print(wf_contents)
643
640
  return wf_contents
644
641
 
645
642
  def dump_inputs(self, path=None):
646
- """Dump YAML inputs."""
643
+ """Dump YAML inputs. If no path is specified return yaml file as a string."""
647
644
  stream = StringIO()
648
645
  yaml.dump(self.inputs.generate_yaml_inputs(), stream)
649
646
  yaml_contents = stream.getvalue()
@@ -40,8 +40,8 @@ def main():
40
40
  source="tar/tarball")])
41
41
 
42
42
  workflow = Workflow("cat-grep-tar", [cat, grep0, grep1, tar])
43
- workflow.write_wf("cat-grep-tar")
44
- workflow.write_yaml("cat-grep-tar")
43
+ workflow.dump_wf("cat-grep-tar")
44
+ workflow.dump_yaml("cat-grep-tar")
45
45
 
46
46
 
47
47
  if __name__ == "__main__":
@@ -30,19 +30,15 @@ def main():
30
30
  # The slurm requirement
31
31
  MPI(nodes=4, ntasks=8),
32
32
  # Example of slurm options
33
- # Slurm(account="standard", time_limit=60, partition="standard",
34
- # qos="debug", reservation="standard"),
33
+ Slurm(account="standard", time_limit=60, partition="standard",
34
+ qos="debug", reservation="standard"),
35
35
  Script(pre_script="comd_pre.sh"),
36
- Slurm(time_limit="500"),
37
36
  Charliecloud(docker_file="Dockerfile.comd-x86_64",
38
37
  container_name="comd-mpi")
39
38
  ])
40
39
  workflow = Workflow("comd", [comd_task])
41
- workflow.write_wf("comd")
42
- workflow.write_yaml("comd")
43
- # workflow = Workflow("comd", [comd_task])
44
- # workflow.write(".")
45
-
40
+ workflow.dump_wf("comd")
41
+ workflow.dump_yaml("comd")
46
42
 
47
43
  if __name__ == "__main__":
48
44
  main()