metaflow 2.12.21__tar.gz → 2.12.22__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 (361) hide show
  1. {metaflow-2.12.21/metaflow.egg-info → metaflow-2.12.22}/PKG-INFO +2 -2
  2. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/argo/argo_workflows.py +38 -8
  3. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/argo/argo_workflows_cli.py +26 -0
  4. metaflow-2.12.22/metaflow/version.py +1 -0
  5. {metaflow-2.12.21 → metaflow-2.12.22/metaflow.egg-info}/PKG-INFO +2 -2
  6. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow.egg-info/SOURCES.txt +0 -1
  7. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow.egg-info/requires.txt +1 -1
  8. metaflow-2.12.21/metaflow/plugins/argo/daemon.py +0 -59
  9. metaflow-2.12.21/metaflow/version.py +0 -1
  10. {metaflow-2.12.21 → metaflow-2.12.22}/LICENSE +0 -0
  11. {metaflow-2.12.21 → metaflow-2.12.22}/MANIFEST.in +0 -0
  12. {metaflow-2.12.21 → metaflow-2.12.22}/README.md +0 -0
  13. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/R.py +0 -0
  14. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/__init__.py +0 -0
  15. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/__init__.py +0 -0
  16. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/__init__.py +0 -0
  17. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/_bashcomplete.py +0 -0
  18. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/_compat.py +0 -0
  19. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/_termui_impl.py +0 -0
  20. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/_textwrap.py +0 -0
  21. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/_unicodefun.py +0 -0
  22. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/_winconsole.py +0 -0
  23. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/core.py +0 -0
  24. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/decorators.py +0 -0
  25. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/exceptions.py +0 -0
  26. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/formatting.py +0 -0
  27. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/globals.py +0 -0
  28. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/parser.py +0 -0
  29. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/termui.py +0 -0
  30. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/testing.py +0 -0
  31. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/types.py +0 -0
  32. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/click/utils.py +0 -0
  33. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/importlib_metadata/__init__.py +0 -0
  34. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/importlib_metadata/_adapters.py +0 -0
  35. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/importlib_metadata/_collections.py +0 -0
  36. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/importlib_metadata/_compat.py +0 -0
  37. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/importlib_metadata/_functools.py +0 -0
  38. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/importlib_metadata/_itertools.py +0 -0
  39. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/importlib_metadata/_meta.py +0 -0
  40. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/importlib_metadata/_text.py +0 -0
  41. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/importlib_metadata/py.typed +0 -0
  42. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/__init__.py +0 -0
  43. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/_elffile.py +0 -0
  44. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/_manylinux.py +0 -0
  45. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/_musllinux.py +0 -0
  46. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/_parser.py +0 -0
  47. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/_structures.py +0 -0
  48. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/_tokenizer.py +0 -0
  49. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/markers.py +0 -0
  50. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/py.typed +0 -0
  51. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/requirements.py +0 -0
  52. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/specifiers.py +0 -0
  53. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/tags.py +0 -0
  54. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/utils.py +0 -0
  55. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/packaging/version.py +0 -0
  56. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/__init__.py +0 -0
  57. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/_checkers.py +0 -0
  58. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/_config.py +0 -0
  59. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/_decorators.py +0 -0
  60. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/_exceptions.py +0 -0
  61. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/_functions.py +0 -0
  62. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/_importhook.py +0 -0
  63. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/_memo.py +0 -0
  64. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/_pytest_plugin.py +0 -0
  65. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/_suppression.py +0 -0
  66. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/_transformer.py +0 -0
  67. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/_union_transformer.py +0 -0
  68. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/_utils.py +0 -0
  69. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typeguard/py.typed +0 -0
  70. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/typing_extensions.py +0 -0
  71. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_5/__init__.py +0 -0
  72. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_5/importlib_metadata/__init__.py +0 -0
  73. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_5/importlib_metadata/_compat.py +0 -0
  74. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_5/zipp.py +0 -0
  75. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_6/__init__.py +0 -0
  76. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_6/importlib_metadata/__init__.py +0 -0
  77. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_6/importlib_metadata/_adapters.py +0 -0
  78. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_6/importlib_metadata/_collections.py +0 -0
  79. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_6/importlib_metadata/_compat.py +0 -0
  80. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_6/importlib_metadata/_functools.py +0 -0
  81. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_6/importlib_metadata/_itertools.py +0 -0
  82. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_6/importlib_metadata/_meta.py +0 -0
  83. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_6/importlib_metadata/_text.py +0 -0
  84. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_6/importlib_metadata/py.typed +0 -0
  85. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_6/typing_extensions.py +0 -0
  86. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/v3_6/zipp.py +0 -0
  87. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/_vendor/zipp.py +0 -0
  88. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/cards.py +0 -0
  89. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/cli.py +0 -0
  90. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/cli_args.py +0 -0
  91. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/client/__init__.py +0 -0
  92. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/client/core.py +0 -0
  93. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/client/filecache.py +0 -0
  94. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/clone_util.py +0 -0
  95. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/cmd/__init__.py +0 -0
  96. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/cmd/configure_cmd.py +0 -0
  97. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/cmd/develop/__init__.py +0 -0
  98. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/cmd/develop/stub_generator.py +0 -0
  99. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/cmd/develop/stubs.py +0 -0
  100. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/cmd/main_cli.py +0 -0
  101. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/cmd/tutorials_cmd.py +0 -0
  102. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/cmd/util.py +0 -0
  103. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/cmd_with_io.py +0 -0
  104. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/datastore/__init__.py +0 -0
  105. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/datastore/content_addressed_store.py +0 -0
  106. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/datastore/datastore_set.py +0 -0
  107. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/datastore/datastore_storage.py +0 -0
  108. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/datastore/exceptions.py +0 -0
  109. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/datastore/flow_datastore.py +0 -0
  110. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/datastore/inputs.py +0 -0
  111. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/datastore/task_datastore.py +0 -0
  112. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/debug.py +0 -0
  113. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/decorators.py +0 -0
  114. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/event_logger.py +0 -0
  115. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/events.py +0 -0
  116. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/exception.py +0 -0
  117. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/extension_support/__init__.py +0 -0
  118. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/extension_support/_empty_file.py +0 -0
  119. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/extension_support/cmd.py +0 -0
  120. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/extension_support/integrations.py +0 -0
  121. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/extension_support/plugins.py +0 -0
  122. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/flowspec.py +0 -0
  123. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/graph.py +0 -0
  124. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/includefile.py +0 -0
  125. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/info_file.py +0 -0
  126. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/integrations.py +0 -0
  127. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/lint.py +0 -0
  128. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/metadata/__init__.py +0 -0
  129. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/metadata/heartbeat.py +0 -0
  130. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/metadata/metadata.py +0 -0
  131. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/metadata/util.py +0 -0
  132. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/metaflow_config.py +0 -0
  133. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/metaflow_config_funcs.py +0 -0
  134. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/metaflow_current.py +0 -0
  135. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/metaflow_environment.py +0 -0
  136. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/metaflow_profile.py +0 -0
  137. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/metaflow_version.py +0 -0
  138. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/mflog/__init__.py +0 -0
  139. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/mflog/mflog.py +0 -0
  140. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/mflog/save_logs.py +0 -0
  141. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/mflog/save_logs_periodically.py +0 -0
  142. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/mflog/tee.py +0 -0
  143. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/monitor.py +0 -0
  144. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/multicore_utils.py +0 -0
  145. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/package.py +0 -0
  146. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/parameters.py +0 -0
  147. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/__init__.py +0 -0
  148. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/airflow/__init__.py +0 -0
  149. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/airflow/airflow.py +0 -0
  150. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/airflow/airflow_cli.py +0 -0
  151. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/airflow/airflow_decorator.py +0 -0
  152. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/airflow/airflow_utils.py +0 -0
  153. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/airflow/dag.py +0 -0
  154. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/airflow/exception.py +0 -0
  155. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/airflow/plumbing/__init__.py +0 -0
  156. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/airflow/plumbing/set_parameters.py +0 -0
  157. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/airflow/sensors/__init__.py +0 -0
  158. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/airflow/sensors/base_sensor.py +0 -0
  159. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/airflow/sensors/external_task_sensor.py +0 -0
  160. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/airflow/sensors/s3_sensor.py +0 -0
  161. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/argo/__init__.py +0 -0
  162. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/argo/argo_client.py +0 -0
  163. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/argo/argo_events.py +0 -0
  164. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/argo/argo_workflows_decorator.py +0 -0
  165. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/argo/argo_workflows_deployer.py +0 -0
  166. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/argo/capture_error.py +0 -0
  167. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/argo/generate_input_paths.py +0 -0
  168. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/argo/jobset_input_paths.py +0 -0
  169. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/__init__.py +0 -0
  170. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/aws_client.py +0 -0
  171. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/aws_utils.py +0 -0
  172. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/batch/__init__.py +0 -0
  173. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/batch/batch.py +0 -0
  174. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/batch/batch_cli.py +0 -0
  175. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/batch/batch_client.py +0 -0
  176. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/batch/batch_decorator.py +0 -0
  177. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/secrets_manager/__init__.py +0 -0
  178. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/secrets_manager/aws_secrets_manager_secrets_provider.py +0 -0
  179. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/step_functions/__init__.py +0 -0
  180. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/step_functions/dynamo_db_client.py +0 -0
  181. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/step_functions/event_bridge_client.py +0 -0
  182. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/step_functions/production_token.py +0 -0
  183. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/step_functions/schedule_decorator.py +0 -0
  184. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/step_functions/set_batch_environment.py +0 -0
  185. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/step_functions/step_functions.py +0 -0
  186. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/step_functions/step_functions_cli.py +0 -0
  187. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/step_functions/step_functions_client.py +0 -0
  188. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/step_functions/step_functions_decorator.py +0 -0
  189. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/aws/step_functions/step_functions_deployer.py +0 -0
  190. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/azure/__init__.py +0 -0
  191. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/azure/azure_credential.py +0 -0
  192. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/azure/azure_exceptions.py +0 -0
  193. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/azure/azure_secret_manager_secrets_provider.py +0 -0
  194. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/azure/azure_tail.py +0 -0
  195. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/azure/azure_utils.py +0 -0
  196. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/azure/blob_service_client_factory.py +0 -0
  197. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/azure/includefile_support.py +0 -0
  198. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/__init__.py +0 -0
  199. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_cli.py +0 -0
  200. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_client.py +0 -0
  201. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_creator.py +0 -0
  202. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_datastore.py +0 -0
  203. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_decorator.py +0 -0
  204. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/__init__.py +0 -0
  205. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/base.html +0 -0
  206. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/basic.py +0 -0
  207. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/bundle.css +0 -0
  208. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/card.py +0 -0
  209. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/chevron/__init__.py +0 -0
  210. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/chevron/main.py +0 -0
  211. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/chevron/metadata.py +0 -0
  212. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/chevron/renderer.py +0 -0
  213. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/chevron/tokenizer.py +0 -0
  214. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/components.py +0 -0
  215. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/convert_to_native_type.py +0 -0
  216. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/main.js +0 -0
  217. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/renderer_tools.py +0 -0
  218. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_modules/test_cards.py +0 -0
  219. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_resolver.py +0 -0
  220. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_server.py +0 -0
  221. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/card_viewer/viewer.html +0 -0
  222. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/component_serializer.py +0 -0
  223. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/cards/exception.py +0 -0
  224. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/catch_decorator.py +0 -0
  225. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/datastores/__init__.py +0 -0
  226. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/datastores/azure_storage.py +0 -0
  227. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/datastores/gs_storage.py +0 -0
  228. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/datastores/local_storage.py +0 -0
  229. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/datastores/s3_storage.py +0 -0
  230. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/datatools/__init__.py +0 -0
  231. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/datatools/local.py +0 -0
  232. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/datatools/s3/__init__.py +0 -0
  233. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/datatools/s3/s3.py +0 -0
  234. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/datatools/s3/s3op.py +0 -0
  235. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/datatools/s3/s3tail.py +0 -0
  236. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/datatools/s3/s3util.py +0 -0
  237. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/debug_logger.py +0 -0
  238. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/debug_monitor.py +0 -0
  239. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/__init__.py +0 -0
  240. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/client.py +0 -0
  241. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/client_modules.py +0 -0
  242. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/communication/__init__.py +0 -0
  243. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/communication/bytestream.py +0 -0
  244. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/communication/channel.py +0 -0
  245. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/communication/socket_bytestream.py +0 -0
  246. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/communication/utils.py +0 -0
  247. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/configurations/emulate_test_lib/__init__.py +0 -0
  248. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/configurations/emulate_test_lib/overrides.py +0 -0
  249. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/configurations/emulate_test_lib/server_mappings.py +0 -0
  250. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/configurations/test_lib_impl/__init__.py +0 -0
  251. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/configurations/test_lib_impl/test_lib.py +0 -0
  252. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/consts.py +0 -0
  253. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/data_transferer.py +0 -0
  254. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/exception_transferer.py +0 -0
  255. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/override_decorators.py +0 -0
  256. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/server.py +0 -0
  257. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/stub.py +0 -0
  258. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/env_escape/utils.py +0 -0
  259. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/environment_decorator.py +0 -0
  260. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/events_decorator.py +0 -0
  261. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/frameworks/__init__.py +0 -0
  262. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/frameworks/pytorch.py +0 -0
  263. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/gcp/__init__.py +0 -0
  264. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/gcp/gcp_secret_manager_secrets_provider.py +0 -0
  265. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/gcp/gs_exceptions.py +0 -0
  266. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/gcp/gs_storage_client_factory.py +0 -0
  267. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/gcp/gs_tail.py +0 -0
  268. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/gcp/gs_utils.py +0 -0
  269. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/gcp/includefile_support.py +0 -0
  270. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/kubernetes/__init__.py +0 -0
  271. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/kubernetes/kube_utils.py +0 -0
  272. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/kubernetes/kubernetes.py +0 -0
  273. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/kubernetes/kubernetes_cli.py +0 -0
  274. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/kubernetes/kubernetes_client.py +0 -0
  275. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/kubernetes/kubernetes_decorator.py +0 -0
  276. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/kubernetes/kubernetes_job.py +0 -0
  277. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/kubernetes/kubernetes_jobsets.py +0 -0
  278. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/logs_cli.py +0 -0
  279. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/metadata/__init__.py +0 -0
  280. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/metadata/local.py +0 -0
  281. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/metadata/service.py +0 -0
  282. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/package_cli.py +0 -0
  283. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/parallel_decorator.py +0 -0
  284. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/project_decorator.py +0 -0
  285. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/pypi/__init__.py +0 -0
  286. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/pypi/bootstrap.py +0 -0
  287. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/pypi/conda_decorator.py +0 -0
  288. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/pypi/conda_environment.py +0 -0
  289. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/pypi/micromamba.py +0 -0
  290. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/pypi/pip.py +0 -0
  291. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/pypi/pypi_decorator.py +0 -0
  292. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/pypi/pypi_environment.py +0 -0
  293. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/pypi/utils.py +0 -0
  294. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/resources_decorator.py +0 -0
  295. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/retry_decorator.py +0 -0
  296. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/secrets/__init__.py +0 -0
  297. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/secrets/inline_secrets_provider.py +0 -0
  298. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/secrets/secrets_decorator.py +0 -0
  299. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/storage_executor.py +0 -0
  300. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/tag_cli.py +0 -0
  301. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/test_unbounded_foreach_decorator.py +0 -0
  302. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/plugins/timeout_decorator.py +0 -0
  303. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/procpoll.py +0 -0
  304. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/py.typed +0 -0
  305. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/pylint_wrapper.py +0 -0
  306. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/runner/__init__.py +0 -0
  307. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/runner/click_api.py +0 -0
  308. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/runner/deployer.py +0 -0
  309. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/runner/metaflow_runner.py +0 -0
  310. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/runner/nbdeploy.py +0 -0
  311. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/runner/nbrun.py +0 -0
  312. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/runner/subprocess_manager.py +0 -0
  313. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/runner/utils.py +0 -0
  314. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/runtime.py +0 -0
  315. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/sidecar/__init__.py +0 -0
  316. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/sidecar/sidecar.py +0 -0
  317. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/sidecar/sidecar_messages.py +0 -0
  318. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/sidecar/sidecar_subprocess.py +0 -0
  319. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/sidecar/sidecar_worker.py +0 -0
  320. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/system/__init__.py +0 -0
  321. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/system/system_logger.py +0 -0
  322. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/system/system_monitor.py +0 -0
  323. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/system/system_utils.py +0 -0
  324. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tagging_util.py +0 -0
  325. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/task.py +0 -0
  326. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tracing/__init__.py +0 -0
  327. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tracing/propagator.py +0 -0
  328. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tracing/span_exporter.py +0 -0
  329. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tracing/tracing_modules.py +0 -0
  330. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tuple_util.py +0 -0
  331. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/00-helloworld/README.md +0 -0
  332. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/00-helloworld/helloworld.py +0 -0
  333. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/01-playlist/README.md +0 -0
  334. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/01-playlist/movies.csv +0 -0
  335. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/01-playlist/playlist.ipynb +0 -0
  336. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/01-playlist/playlist.py +0 -0
  337. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/02-statistics/README.md +0 -0
  338. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/02-statistics/movies.csv +0 -0
  339. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/02-statistics/stats.ipynb +0 -0
  340. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/02-statistics/stats.py +0 -0
  341. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/03-playlist-redux/README.md +0 -0
  342. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/03-playlist-redux/playlist.py +0 -0
  343. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/04-playlist-plus/README.md +0 -0
  344. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/04-playlist-plus/playlist.py +0 -0
  345. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/05-hello-cloud/README.md +0 -0
  346. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/05-hello-cloud/hello-cloud.ipynb +0 -0
  347. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/05-hello-cloud/hello-cloud.py +0 -0
  348. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/06-statistics-redux/README.md +0 -0
  349. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/06-statistics-redux/stats.ipynb +0 -0
  350. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/07-worldview/README.md +0 -0
  351. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/07-worldview/worldview.ipynb +0 -0
  352. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/08-autopilot/README.md +0 -0
  353. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/tutorials/08-autopilot/autopilot.ipynb +0 -0
  354. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/unbounded_foreach.py +0 -0
  355. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/util.py +0 -0
  356. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow/vendor.py +0 -0
  357. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow.egg-info/dependency_links.txt +0 -0
  358. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow.egg-info/entry_points.txt +0 -0
  359. {metaflow-2.12.21 → metaflow-2.12.22}/metaflow.egg-info/top_level.txt +0 -0
  360. {metaflow-2.12.21 → metaflow-2.12.22}/setup.cfg +0 -0
  361. {metaflow-2.12.21 → metaflow-2.12.22}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: metaflow
3
- Version: 2.12.21
3
+ Version: 2.12.22
4
4
  Summary: Metaflow: More Data Science, Less Engineering
5
5
  Author: Metaflow Developers
6
6
  Author-email: help@metaflow.org
@@ -26,7 +26,7 @@ License-File: LICENSE
26
26
  Requires-Dist: requests
27
27
  Requires-Dist: boto3
28
28
  Provides-Extra: stubs
29
- Requires-Dist: metaflow-stubs==2.12.21; extra == "stubs"
29
+ Requires-Dist: metaflow-stubs==2.12.22; extra == "stubs"
30
30
 
31
31
  ![Metaflow_Logo_Horizontal_FullColor_Ribbon_Dark_RGB](https://user-images.githubusercontent.com/763451/89453116-96a57e00-d713-11ea-9fa6-82b29d4d6eff.png)
32
32
 
@@ -455,11 +455,17 @@ class ArgoWorkflows(object):
455
455
  )
456
456
  seen.add(norm)
457
457
 
458
- if param.kwargs.get("type") == JSONType or isinstance(
459
- param.kwargs.get("type"), FilePathClass
460
- ):
461
- # Special-case this to avoid touching core
458
+ extra_attrs = {}
459
+ if param.kwargs.get("type") == JSONType:
460
+ param_type = str(param.kwargs.get("type").name)
461
+ elif isinstance(param.kwargs.get("type"), FilePathClass):
462
462
  param_type = str(param.kwargs.get("type").name)
463
+ extra_attrs["is_text"] = getattr(
464
+ param.kwargs.get("type"), "_is_text", True
465
+ )
466
+ extra_attrs["encoding"] = getattr(
467
+ param.kwargs.get("type"), "_encoding", "utf-8"
468
+ )
463
469
  else:
464
470
  param_type = str(param.kwargs.get("type").__name__)
465
471
 
@@ -487,6 +493,7 @@ class ArgoWorkflows(object):
487
493
  type=param_type,
488
494
  description=param.kwargs.get("help"),
489
495
  is_required=is_required,
496
+ **extra_attrs
490
497
  )
491
498
  return parameters
492
499
 
@@ -2515,10 +2522,29 @@ class ArgoWorkflows(object):
2515
2522
  # Use all the affordances available to _parameters task
2516
2523
  executable = self.environment.executable("_parameters")
2517
2524
  run_id = "argo-{{workflow.name}}"
2518
- entrypoint = [executable, "-m metaflow.plugins.argo.daemon"]
2519
- heartbeat_cmds = "{entrypoint} --flow_name {flow_name} --run_id {run_id} {tags} heartbeat".format(
2525
+ script_name = os.path.basename(sys.argv[0])
2526
+ entrypoint = [executable, script_name]
2527
+ # FlowDecorators can define their own top-level options. These might affect run level information
2528
+ # so it is important to pass these to the heartbeat process as well, as it might be the first task to register a run.
2529
+ top_opts_dict = {}
2530
+ for deco in flow_decorators(self.flow):
2531
+ top_opts_dict.update(deco.get_top_level_options())
2532
+
2533
+ top_level = list(dict_to_cli_options(top_opts_dict)) + [
2534
+ "--quiet",
2535
+ "--metadata=%s" % self.metadata.TYPE,
2536
+ "--environment=%s" % self.environment.TYPE,
2537
+ "--datastore=%s" % self.flow_datastore.TYPE,
2538
+ "--datastore-root=%s" % self.flow_datastore.datastore_root,
2539
+ "--event-logger=%s" % self.event_logger.TYPE,
2540
+ "--monitor=%s" % self.monitor.TYPE,
2541
+ "--no-pylint",
2542
+ "--with=argo_workflows_internal:auto-emit-argo-events=%i"
2543
+ % self.auto_emit_argo_events,
2544
+ ]
2545
+ heartbeat_cmds = "{entrypoint} {top_level} argo-workflows heartbeat --run_id {run_id} {tags}".format(
2520
2546
  entrypoint=" ".join(entrypoint),
2521
- flow_name=self.flow.name,
2547
+ top_level=" ".join(top_level) if top_level else "",
2522
2548
  run_id=run_id,
2523
2549
  tags=" ".join(["--tag %s" % t for t in self.tags]) if self.tags else "",
2524
2550
  )
@@ -2569,12 +2595,16 @@ class ArgoWorkflows(object):
2569
2595
  "METAFLOW_SERVICE_URL": SERVICE_INTERNAL_URL,
2570
2596
  "METAFLOW_SERVICE_HEADERS": json.dumps(SERVICE_HEADERS),
2571
2597
  "METAFLOW_USER": "argo-workflows",
2598
+ "METAFLOW_DATASTORE_SYSROOT_S3": DATASTORE_SYSROOT_S3,
2599
+ "METAFLOW_DATATOOLS_S3ROOT": DATATOOLS_S3ROOT,
2572
2600
  "METAFLOW_DEFAULT_DATASTORE": self.flow_datastore.TYPE,
2573
2601
  "METAFLOW_DEFAULT_METADATA": DEFAULT_METADATA,
2602
+ "METAFLOW_CARD_S3ROOT": CARD_S3ROOT,
2574
2603
  "METAFLOW_KUBERNETES_WORKLOAD": 1,
2604
+ "METAFLOW_KUBERNETES_FETCH_EC2_METADATA": KUBERNETES_FETCH_EC2_METADATA,
2575
2605
  "METAFLOW_RUNTIME_ENVIRONMENT": "kubernetes",
2576
2606
  "METAFLOW_OWNER": self.username,
2577
- "METAFLOW_PRODUCTION_TOKEN": self.production_token,
2607
+ "METAFLOW_PRODUCTION_TOKEN": self.production_token, # Used in identity resolving. This affects system tags.
2578
2608
  }
2579
2609
  # support Metaflow sandboxes
2580
2610
  env["METAFLOW_INIT_SCRIPT"] = KUBERNETES_SANDBOX_INIT_SCRIPT
@@ -4,6 +4,7 @@ import platform
4
4
  import re
5
5
  import sys
6
6
  from hashlib import sha1
7
+ from time import sleep
7
8
 
8
9
  from metaflow import JSONType, Run, current, decorators, parameters
9
10
  from metaflow._vendor import click
@@ -959,6 +960,31 @@ def list_workflow_templates(obj, all=None):
959
960
  obj.echo_always(template_name)
960
961
 
961
962
 
963
+ # Internal CLI command to run a heartbeat daemon in an Argo Workflows Daemon container.
964
+ @argo_workflows.command(hidden=True, help="start heartbeat process for a run")
965
+ @click.option("--run_id", required=True)
966
+ @click.option(
967
+ "--tag",
968
+ "tags",
969
+ multiple=True,
970
+ default=None,
971
+ help="Annotate all objects produced by Argo Workflows runs "
972
+ "with the given tag. You can specify this option multiple "
973
+ "times to attach multiple tags.",
974
+ )
975
+ @click.pass_obj
976
+ def heartbeat(obj, run_id, tags=None):
977
+ # Try to register a run in case the start task has not taken care of it yet.
978
+ obj.metadata.register_run_id(run_id, tags)
979
+ # Start run heartbeat
980
+ obj.metadata.start_run_heartbeat(obj.flow.name, run_id)
981
+ # Keepalive loop
982
+ while True:
983
+ # Do not pollute daemon logs with anything unnecessary,
984
+ # as they might be extremely long running.
985
+ sleep(10)
986
+
987
+
962
988
  def validate_run_id(
963
989
  workflow_name, token_prefix, authorize, run_id, instructions_fn=None
964
990
  ):
@@ -0,0 +1 @@
1
+ metaflow_version = "2.12.22"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: metaflow
3
- Version: 2.12.21
3
+ Version: 2.12.22
4
4
  Summary: Metaflow: More Data Science, Less Engineering
5
5
  Author: Metaflow Developers
6
6
  Author-email: help@metaflow.org
@@ -26,7 +26,7 @@ License-File: LICENSE
26
26
  Requires-Dist: requests
27
27
  Requires-Dist: boto3
28
28
  Provides-Extra: stubs
29
- Requires-Dist: metaflow-stubs==2.12.21; extra == "stubs"
29
+ Requires-Dist: metaflow-stubs==2.12.22; extra == "stubs"
30
30
 
31
31
  ![Metaflow_Logo_Horizontal_FullColor_Ribbon_Dark_RGB](https://user-images.githubusercontent.com/763451/89453116-96a57e00-d713-11ea-9fa6-82b29d4d6eff.png)
32
32
 
@@ -191,7 +191,6 @@ metaflow/plugins/argo/argo_workflows_cli.py
191
191
  metaflow/plugins/argo/argo_workflows_decorator.py
192
192
  metaflow/plugins/argo/argo_workflows_deployer.py
193
193
  metaflow/plugins/argo/capture_error.py
194
- metaflow/plugins/argo/daemon.py
195
194
  metaflow/plugins/argo/generate_input_paths.py
196
195
  metaflow/plugins/argo/jobset_input_paths.py
197
196
  metaflow/plugins/aws/__init__.py
@@ -2,4 +2,4 @@ requests
2
2
  boto3
3
3
 
4
4
  [stubs]
5
- metaflow-stubs==2.12.21
5
+ metaflow-stubs==2.12.22
@@ -1,59 +0,0 @@
1
- from collections import namedtuple
2
- from time import sleep
3
- from metaflow.metaflow_config import DEFAULT_METADATA
4
- from metaflow.metaflow_environment import MetaflowEnvironment
5
- from metaflow.plugins import METADATA_PROVIDERS
6
- from metaflow._vendor import click
7
-
8
-
9
- class CliState:
10
- pass
11
-
12
-
13
- @click.group()
14
- @click.option("--flow_name", required=True)
15
- @click.option("--run_id", required=True)
16
- @click.option(
17
- "--tag",
18
- "tags",
19
- multiple=True,
20
- default=None,
21
- help="Annotate all objects produced by Argo Workflows runs "
22
- "with the given tag. You can specify this option multiple "
23
- "times to attach multiple tags.",
24
- )
25
- @click.pass_context
26
- def cli(ctx, flow_name, run_id, tags=None):
27
- ctx.obj = CliState()
28
- ctx.obj.flow_name = flow_name
29
- ctx.obj.run_id = run_id
30
- ctx.obj.tags = tags
31
- # Use a dummy flow to initialize the environment and metadata service,
32
- # as we only need a name for the flow object.
33
- flow = namedtuple("DummyFlow", "name")
34
- dummyflow = flow(flow_name)
35
-
36
- # Initialize a proper metadata service instance
37
- environment = MetaflowEnvironment(dummyflow)
38
-
39
- ctx.obj.metadata = [m for m in METADATA_PROVIDERS if m.TYPE == DEFAULT_METADATA][0](
40
- environment, dummyflow, None, None
41
- )
42
-
43
-
44
- @cli.command(help="start heartbeat process for a run")
45
- @click.pass_obj
46
- def heartbeat(obj):
47
- # Try to register a run in case the start task has not taken care of it yet.
48
- obj.metadata.register_run_id(obj.run_id, obj.tags)
49
- # Start run heartbeat
50
- obj.metadata.start_run_heartbeat(obj.flow_name, obj.run_id)
51
- # Keepalive loop
52
- while True:
53
- # Do not pollute daemon logs with anything unnecessary,
54
- # as they might be extremely long running.
55
- sleep(10)
56
-
57
-
58
- if __name__ == "__main__":
59
- cli()
@@ -1 +0,0 @@
1
- metaflow_version = "2.12.21"
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