ob-metaflow-extensions 1.2.0__tar.gz → 1.2.2rc0__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.
Potentially problematic release.
This version of ob-metaflow-extensions might be problematic. Click here for more details.
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/PKG-INFO +1 -1
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/aws/assume_role_decorator.py +5 -7
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/checkpoint_datastores/coreweave.py +6 -11
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/checkpoint_datastores/nebius.py +6 -11
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/fast_bakery/docker_environment.py +6 -2
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/ob_metaflow_extensions.egg-info/PKG-INFO +1 -1
- ob_metaflow_extensions-1.2.2rc0/ob_metaflow_extensions.egg-info/requires.txt +3 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/setup.py +2 -2
- ob_metaflow_extensions-1.2.0/ob_metaflow_extensions.egg-info/requires.txt +0 -3
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/MANIFEST.in +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/README.md +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/config/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/app_cli.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/app_deploy_decorator.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/app_utils.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/consts.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/_state_machine.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/_vendor/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/_vendor/spinner/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/_vendor/spinner/spinners.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/app_cli.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/app_config.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/artifacts.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/capsule.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/click_importer.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/code_package/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/code_package/code_packager.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/code_package/examples.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/config/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/config/cli_generator.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/config/config_utils.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/config/schema_export.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/config/typed_configs.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/config/typed_init_generator.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/config/unified_config.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/config_schema.yaml +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/dependencies.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/deployer.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/experimental/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/perimeters.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/secrets.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/utils.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/core/validations.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/deploy_decorator.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/apps/supervisord_utils.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/auth_server.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/aws/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/aws/assume_role.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/card_utilities/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/card_utilities/async_cards.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/card_utilities/extra_components.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/card_utilities/injector.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/checkpoint_datastores/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/fast_bakery/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/fast_bakery/baker.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/fast_bakery/fast_bakery.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/fast_bakery/fast_bakery_cli.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/fast_bakery/fast_bakery_decorator.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/kubernetes/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/kubernetes/kubernetes_client.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/kubernetes/pod_killer.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nim/card.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nim/nim_decorator.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nim/nim_manager.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nim/utils.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvcf/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvcf/constants.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvcf/exceptions.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvcf/heartbeat_store.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvcf/nvcf.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvcf/nvcf_cli.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvcf/nvcf_decorator.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvcf/utils.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvct/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvct/exceptions.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvct/nvct.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvct/nvct_cli.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvct/nvct_decorator.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvct/nvct_runner.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/nvct/utils.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/ollama/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/ollama/constants.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/ollama/exceptions.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/ollama/ollama.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/ollama/status_card.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/perimeters.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/profilers/deco_injector.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/profilers/gpu_profile_decorator.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/secrets/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/secrets/secrets.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/snowflake/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/snowflake/snowflake.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/snowpark/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/snowpark/snowpark.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/snowpark/snowpark_cli.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/snowpark/snowpark_client.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/snowpark/snowpark_decorator.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/snowpark/snowpark_exceptions.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/snowpark/snowpark_job.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/snowpark/snowpark_service_spec.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/tensorboard/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/torchtune/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/vllm/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/vllm/constants.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/vllm/exceptions.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/vllm/status_card.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/plugins/vllm/vllm_manager.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/profilers/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/profilers/gpu.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/remote_config.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/toplevel/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/toplevel/global_aliases_for_metaflow_package.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/toplevel/ob_internal.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/toplevel/plugins/azure/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/toplevel/plugins/gcp/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/toplevel/plugins/kubernetes/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/toplevel/plugins/ollama/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/toplevel/plugins/snowflake/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/toplevel/plugins/torchtune/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/metaflow_extensions/outerbounds/toplevel/plugins/vllm/__init__.py +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/ob_metaflow_extensions.egg-info/SOURCES.txt +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/ob_metaflow_extensions.egg-info/dependency_links.txt +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/ob_metaflow_extensions.egg-info/top_level.txt +0 -0
- {ob_metaflow_extensions-1.2.0 → ob_metaflow_extensions-1.2.2rc0}/setup.cfg +0 -0
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
from metaflow.
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
CustomFlowDecorator,
|
|
5
|
-
)
|
|
1
|
+
from metaflow.user_decorators.user_flow_decorator import FlowMutator
|
|
2
|
+
from metaflow.user_decorators.mutable_flow import MutableFlow
|
|
3
|
+
from metaflow.user_decorators.mutable_step import MutableStep
|
|
6
4
|
from .assume_role import OBP_ASSUME_ROLE_ARN_ENV_VAR
|
|
7
5
|
|
|
8
6
|
|
|
9
|
-
class assume_role(
|
|
7
|
+
class assume_role(FlowMutator):
|
|
10
8
|
"""
|
|
11
9
|
Flow-level decorator for assuming AWS IAM roles.
|
|
12
10
|
|
|
@@ -42,7 +40,7 @@ class assume_role(CustomFlowDecorator):
|
|
|
42
40
|
"`role_arn` must be a valid AWS IAM role ARN starting with 'arn:aws:iam::'"
|
|
43
41
|
)
|
|
44
42
|
|
|
45
|
-
def
|
|
43
|
+
def pre_mutate(self, mutable_flow: MutableFlow) -> None:
|
|
46
44
|
"""
|
|
47
45
|
This method is called by Metaflow to apply the decorator to the flow.
|
|
48
46
|
It sets up environment variables that will be used by the AWS client
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
from metaflow.
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
CustomFlowDecorator,
|
|
5
|
-
)
|
|
1
|
+
from metaflow.user_decorators.user_flow_decorator import FlowMutator
|
|
2
|
+
from metaflow.user_decorators.mutable_flow import MutableFlow
|
|
3
|
+
from metaflow.user_decorators.mutable_step import MutableStep
|
|
6
4
|
import os
|
|
7
5
|
|
|
8
6
|
|
|
9
|
-
class coreweave_checkpoints(
|
|
7
|
+
class coreweave_checkpoints(FlowMutator):
|
|
10
8
|
|
|
11
9
|
"""
|
|
12
10
|
|
|
@@ -28,7 +26,7 @@ class coreweave_checkpoints(CustomFlowDecorator):
|
|
|
28
26
|
```python
|
|
29
27
|
from metaflow import checkpoint, step, FlowSpec, coreweave_checkpoints
|
|
30
28
|
|
|
31
|
-
@coreweave_checkpoints(secrets=[], bucket_path=
|
|
29
|
+
@coreweave_checkpoints(secrets=[], bucket_path="s3://my-coreweave-bucket/foo")
|
|
32
30
|
class MyFlow(FlowSpec):
|
|
33
31
|
@checkpoint
|
|
34
32
|
@step
|
|
@@ -42,9 +40,6 @@ class coreweave_checkpoints(CustomFlowDecorator):
|
|
|
42
40
|
```
|
|
43
41
|
"""
|
|
44
42
|
|
|
45
|
-
def __init__(self, *args, **kwargs):
|
|
46
|
-
super().__init__(*args, **kwargs)
|
|
47
|
-
|
|
48
43
|
def init(self, *args, **kwargs):
|
|
49
44
|
self.bucket_path = kwargs.get("bucket_path", None)
|
|
50
45
|
|
|
@@ -64,7 +59,7 @@ class coreweave_checkpoints(CustomFlowDecorator):
|
|
|
64
59
|
"`secrets` keyword argument is required for the coreweave_datastore"
|
|
65
60
|
)
|
|
66
61
|
|
|
67
|
-
def
|
|
62
|
+
def pre_mutate(self, mutable_flow: MutableFlow) -> None:
|
|
68
63
|
from metaflow import (
|
|
69
64
|
checkpoint,
|
|
70
65
|
model,
|
|
@@ -1,14 +1,12 @@
|
|
|
1
|
-
from metaflow.
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
CustomFlowDecorator,
|
|
5
|
-
)
|
|
1
|
+
from metaflow.user_decorators.user_flow_decorator import FlowMutator
|
|
2
|
+
from metaflow.user_decorators.mutable_flow import MutableFlow
|
|
3
|
+
from metaflow.user_decorators.mutable_step import MutableStep
|
|
6
4
|
import os
|
|
7
5
|
|
|
8
6
|
NEBIUS_ENDPOINT_URL = "https://storage.eu-north1.nebius.cloud:443"
|
|
9
7
|
|
|
10
8
|
|
|
11
|
-
class nebius_checkpoints(
|
|
9
|
+
class nebius_checkpoints(FlowMutator):
|
|
12
10
|
|
|
13
11
|
"""
|
|
14
12
|
|
|
@@ -34,7 +32,7 @@ class nebius_checkpoints(CustomFlowDecorator):
|
|
|
34
32
|
```python
|
|
35
33
|
from metaflow import checkpoint, step, FlowSpec, nebius_checkpoints
|
|
36
34
|
|
|
37
|
-
@nebius_checkpoints(secrets=[], bucket_path=
|
|
35
|
+
@nebius_checkpoints(secrets=[], bucket_path="s3://my-nebius-bucket/foo")
|
|
38
36
|
class MyFlow(FlowSpec):
|
|
39
37
|
@checkpoint
|
|
40
38
|
@step
|
|
@@ -48,9 +46,6 @@ class nebius_checkpoints(CustomFlowDecorator):
|
|
|
48
46
|
```
|
|
49
47
|
"""
|
|
50
48
|
|
|
51
|
-
def __init__(self, *args, **kwargs):
|
|
52
|
-
super().__init__(*args, **kwargs)
|
|
53
|
-
|
|
54
49
|
def init(self, *args, **kwargs):
|
|
55
50
|
self.bucket_path = kwargs.get("bucket_path", None)
|
|
56
51
|
|
|
@@ -70,7 +65,7 @@ class nebius_checkpoints(CustomFlowDecorator):
|
|
|
70
65
|
"`secrets` keyword argument is required for the coreweave_datastore"
|
|
71
66
|
)
|
|
72
67
|
|
|
73
|
-
def
|
|
68
|
+
def pre_mutate(self, mutable_flow: MutableFlow) -> None:
|
|
74
69
|
from metaflow import (
|
|
75
70
|
checkpoint,
|
|
76
71
|
model,
|
|
@@ -351,12 +351,16 @@ class DockerEnvironment(MetaflowEnvironment):
|
|
|
351
351
|
config.append("--disable=F0401")
|
|
352
352
|
return config
|
|
353
353
|
|
|
354
|
-
def get_package_commands(
|
|
354
|
+
def get_package_commands(
|
|
355
|
+
self, codepackage_url, datastore_type, code_package_metadata=None
|
|
356
|
+
):
|
|
355
357
|
# we must set the skip install flag at this stage in order to skip package downloads,
|
|
356
358
|
# doing so in bootstrap_commands is too late in the lifecycle.
|
|
357
359
|
return [
|
|
358
360
|
"export METAFLOW_SKIP_INSTALL_DEPENDENCIES=$FASTBAKERY_IMAGE",
|
|
359
|
-
] + super().get_package_commands(
|
|
361
|
+
] + super().get_package_commands(
|
|
362
|
+
codepackage_url, datastore_type, code_package_metadata=code_package_metadata
|
|
363
|
+
)
|
|
360
364
|
|
|
361
365
|
def bootstrap_commands(self, step_name, datastore_type):
|
|
362
366
|
if step_name in self.skipped_steps:
|
|
@@ -2,7 +2,7 @@ from setuptools import setup, find_namespace_packages
|
|
|
2
2
|
from pathlib import Path
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
version = "1.2.
|
|
5
|
+
version = "1.2.2rc0"
|
|
6
6
|
this_directory = Path(__file__).parent
|
|
7
7
|
long_description = (this_directory / "README.md").read_text()
|
|
8
8
|
|
|
@@ -19,6 +19,6 @@ setup(
|
|
|
19
19
|
install_requires=[
|
|
20
20
|
"boto3",
|
|
21
21
|
"kubernetes",
|
|
22
|
-
"ob-metaflow == 2.
|
|
22
|
+
"ob-metaflow == 2.16.0.1",
|
|
23
23
|
],
|
|
24
24
|
)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
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
|