ob-metaflow-stubs 6.0.3.187__py2.py3-none-any.whl → 6.0.3.188rc0__py2.py3-none-any.whl
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.
- metaflow-stubs/__init__.pyi +917 -917
- metaflow-stubs/cards.pyi +1 -1
- metaflow-stubs/cli.pyi +1 -1
- metaflow-stubs/cli_components/__init__.pyi +1 -1
- metaflow-stubs/cli_components/utils.pyi +1 -1
- metaflow-stubs/client/__init__.pyi +1 -1
- metaflow-stubs/client/core.pyi +4 -4
- metaflow-stubs/client/filecache.pyi +1 -1
- metaflow-stubs/events.pyi +2 -2
- metaflow-stubs/exception.pyi +1 -1
- metaflow-stubs/flowspec.pyi +3 -3
- metaflow-stubs/generated_for.txt +1 -1
- metaflow-stubs/includefile.pyi +3 -3
- metaflow-stubs/info_file.pyi +1 -1
- metaflow-stubs/metadata_provider/__init__.pyi +1 -1
- metaflow-stubs/metadata_provider/heartbeat.pyi +1 -1
- metaflow-stubs/metadata_provider/metadata.pyi +2 -2
- metaflow-stubs/metadata_provider/util.pyi +1 -1
- metaflow-stubs/metaflow_config.pyi +1 -1
- metaflow-stubs/metaflow_current.pyi +41 -41
- metaflow-stubs/metaflow_git.pyi +1 -1
- metaflow-stubs/mf_extensions/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/card_utils/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/card_utils/async_cards.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/card_utils/deco_injection_mixin.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/card_utils/extra_components.pyi +3 -3
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/checkpoints/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/checkpoints/cards/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/checkpoints/cards/checkpoint_lister.pyi +4 -4
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/checkpoints/cards/lineage_card.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/checkpoints/checkpoint_storage.pyi +5 -5
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/checkpoints/constructors.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/checkpoints/core.pyi +3 -3
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/checkpoints/decorator.pyi +3 -3
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/checkpoints/exceptions.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/checkpoints/final_api.pyi +2 -2
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/checkpoints/lineage.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/datastore/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/datastore/context.pyi +2 -2
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/datastore/core.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/datastore/decorator.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/datastore/exceptions.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/datastore/task_utils.pyi +3 -3
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/datastore/utils.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/datastructures.pyi +2 -2
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/exceptions.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/hf_hub/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/hf_hub/decorator.pyi +2 -2
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/modeling_utils/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/modeling_utils/core.pyi +3 -3
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/modeling_utils/exceptions.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/modeling_utils/model_storage.pyi +3 -3
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/utils/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/utils/flowspec_utils.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/utils/general.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/utils/identity_utils.pyi +2 -2
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/utils/serialization_handler/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/utils/serialization_handler/base.pyi +1 -1
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/utils/serialization_handler/tar.pyi +2 -2
- metaflow-stubs/mf_extensions/obcheckpoint/plugins/machine_learning_utilities/utils/tar_utils.pyi +2 -2
- metaflow-stubs/mf_extensions/outerbounds/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/__init__.pyi +6 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/__init__.pyi +22 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/_state_machine.pyi +119 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/_vendor/__init__.pyi +6 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/_vendor/spinner/__init__.pyi +6 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/_vendor/spinner/spinners.pyi +19 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/app_cli.pyi +126 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/app_config.pyi +98 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/capsule.pyi +233 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/cli_to_config.pyi +17 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/click_importer.pyi +12 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/code_package/__init__.pyi +12 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/code_package/code_packager.pyi +242 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/dependencies.pyi +50 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/experimental/__init__.pyi +27 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/perimeters.pyi +30 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/secrets.pyi +46 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/utils.pyi +91 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/apps/core/validations.pyi +24 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/aws/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/aws/assume_role_decorator.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/card_utilities/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/card_utilities/async_cards.pyi +2 -2
- metaflow-stubs/mf_extensions/outerbounds/plugins/card_utilities/injector.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/checkpoint_datastores/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/checkpoint_datastores/coreweave.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/checkpoint_datastores/nebius.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/fast_bakery/__init__.pyi +6 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/fast_bakery/baker.pyi +51 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/fast_bakery/docker_environment.pyi +65 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/fast_bakery/fast_bakery.pyi +74 -0
- metaflow-stubs/mf_extensions/outerbounds/plugins/kubernetes/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/kubernetes/pod_killer.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/ollama/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/ollama/constants.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/ollama/exceptions.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/ollama/ollama.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/ollama/status_card.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/snowflake/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/plugins/snowflake/snowflake.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/profilers/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/profilers/gpu.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/remote_config.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/toplevel/__init__.pyi +1 -1
- metaflow-stubs/mf_extensions/outerbounds/toplevel/global_aliases_for_metaflow_package.pyi +1 -1
- metaflow-stubs/multicore_utils.pyi +1 -1
- metaflow-stubs/ob_internal.pyi +3 -1
- metaflow-stubs/parameters.pyi +3 -3
- metaflow-stubs/plugins/__init__.pyi +11 -11
- metaflow-stubs/plugins/airflow/__init__.pyi +1 -1
- metaflow-stubs/plugins/airflow/airflow_utils.pyi +1 -1
- metaflow-stubs/plugins/airflow/exception.pyi +1 -1
- metaflow-stubs/plugins/airflow/sensors/__init__.pyi +1 -1
- metaflow-stubs/plugins/airflow/sensors/base_sensor.pyi +1 -1
- metaflow-stubs/plugins/airflow/sensors/external_task_sensor.pyi +1 -1
- metaflow-stubs/plugins/airflow/sensors/s3_sensor.pyi +1 -1
- metaflow-stubs/plugins/argo/__init__.pyi +1 -1
- metaflow-stubs/plugins/argo/argo_client.pyi +1 -1
- metaflow-stubs/plugins/argo/argo_events.pyi +1 -1
- metaflow-stubs/plugins/argo/argo_workflows.pyi +2 -2
- metaflow-stubs/plugins/argo/argo_workflows_decorator.pyi +1 -1
- metaflow-stubs/plugins/argo/argo_workflows_deployer.pyi +2 -2
- metaflow-stubs/plugins/argo/argo_workflows_deployer_objects.pyi +3 -3
- metaflow-stubs/plugins/aws/__init__.pyi +1 -1
- metaflow-stubs/plugins/aws/aws_client.pyi +1 -1
- metaflow-stubs/plugins/aws/aws_utils.pyi +1 -1
- metaflow-stubs/plugins/aws/batch/__init__.pyi +1 -1
- metaflow-stubs/plugins/aws/batch/batch.pyi +1 -1
- metaflow-stubs/plugins/aws/batch/batch_client.pyi +1 -1
- metaflow-stubs/plugins/aws/batch/batch_decorator.pyi +1 -1
- metaflow-stubs/plugins/aws/secrets_manager/__init__.pyi +1 -1
- metaflow-stubs/plugins/aws/secrets_manager/aws_secrets_manager_secrets_provider.pyi +2 -2
- metaflow-stubs/plugins/aws/step_functions/__init__.pyi +1 -1
- metaflow-stubs/plugins/aws/step_functions/event_bridge_client.pyi +1 -1
- metaflow-stubs/plugins/aws/step_functions/schedule_decorator.pyi +1 -1
- metaflow-stubs/plugins/aws/step_functions/step_functions.pyi +1 -1
- metaflow-stubs/plugins/aws/step_functions/step_functions_client.pyi +1 -1
- metaflow-stubs/plugins/aws/step_functions/step_functions_deployer.pyi +3 -3
- metaflow-stubs/plugins/aws/step_functions/step_functions_deployer_objects.pyi +3 -3
- metaflow-stubs/plugins/azure/__init__.pyi +1 -1
- metaflow-stubs/plugins/azure/azure_credential.pyi +1 -1
- metaflow-stubs/plugins/azure/azure_exceptions.pyi +1 -1
- metaflow-stubs/plugins/azure/azure_secret_manager_secrets_provider.pyi +2 -2
- metaflow-stubs/plugins/azure/azure_utils.pyi +1 -1
- metaflow-stubs/plugins/azure/blob_service_client_factory.pyi +1 -1
- metaflow-stubs/plugins/azure/includefile_support.pyi +1 -1
- metaflow-stubs/plugins/cards/__init__.pyi +5 -5
- metaflow-stubs/plugins/cards/card_client.pyi +1 -1
- metaflow-stubs/plugins/cards/card_creator.pyi +1 -1
- metaflow-stubs/plugins/cards/card_datastore.pyi +1 -1
- metaflow-stubs/plugins/cards/card_decorator.pyi +1 -1
- metaflow-stubs/plugins/cards/card_modules/__init__.pyi +1 -1
- metaflow-stubs/plugins/cards/card_modules/basic.pyi +1 -1
- metaflow-stubs/plugins/cards/card_modules/card.pyi +1 -1
- metaflow-stubs/plugins/cards/card_modules/components.pyi +3 -3
- metaflow-stubs/plugins/cards/card_modules/convert_to_native_type.pyi +1 -1
- metaflow-stubs/plugins/cards/card_modules/renderer_tools.pyi +1 -1
- metaflow-stubs/plugins/cards/card_modules/test_cards.pyi +1 -1
- metaflow-stubs/plugins/cards/card_resolver.pyi +1 -1
- metaflow-stubs/plugins/cards/component_serializer.pyi +1 -1
- metaflow-stubs/plugins/cards/exception.pyi +1 -1
- metaflow-stubs/plugins/catch_decorator.pyi +1 -1
- metaflow-stubs/plugins/datatools/__init__.pyi +1 -1
- metaflow-stubs/plugins/datatools/local.pyi +1 -1
- metaflow-stubs/plugins/datatools/s3/__init__.pyi +1 -1
- metaflow-stubs/plugins/datatools/s3/s3.pyi +3 -3
- metaflow-stubs/plugins/datatools/s3/s3tail.pyi +1 -1
- metaflow-stubs/plugins/datatools/s3/s3util.pyi +1 -1
- metaflow-stubs/plugins/debug_logger.pyi +1 -1
- metaflow-stubs/plugins/debug_monitor.pyi +1 -1
- metaflow-stubs/plugins/environment_decorator.pyi +1 -1
- metaflow-stubs/plugins/events_decorator.pyi +1 -1
- metaflow-stubs/plugins/frameworks/__init__.pyi +1 -1
- metaflow-stubs/plugins/frameworks/pytorch.pyi +1 -1
- metaflow-stubs/plugins/gcp/__init__.pyi +1 -1
- metaflow-stubs/plugins/gcp/gcp_secret_manager_secrets_provider.pyi +2 -2
- metaflow-stubs/plugins/gcp/gs_exceptions.pyi +1 -1
- metaflow-stubs/plugins/gcp/gs_storage_client_factory.pyi +1 -1
- metaflow-stubs/plugins/gcp/gs_utils.pyi +1 -1
- metaflow-stubs/plugins/gcp/includefile_support.pyi +1 -1
- metaflow-stubs/plugins/kubernetes/__init__.pyi +1 -1
- metaflow-stubs/plugins/kubernetes/kube_utils.pyi +2 -2
- metaflow-stubs/plugins/kubernetes/kubernetes.pyi +1 -1
- metaflow-stubs/plugins/kubernetes/kubernetes_client.pyi +1 -1
- metaflow-stubs/plugins/kubernetes/kubernetes_decorator.pyi +1 -1
- metaflow-stubs/plugins/kubernetes/kubernetes_jobsets.pyi +1 -1
- metaflow-stubs/plugins/kubernetes/spot_monitor_sidecar.pyi +1 -1
- metaflow-stubs/plugins/ollama/__init__.pyi +2 -2
- metaflow-stubs/plugins/parallel_decorator.pyi +1 -1
- metaflow-stubs/plugins/perimeters.pyi +1 -1
- metaflow-stubs/plugins/project_decorator.pyi +1 -1
- metaflow-stubs/plugins/pypi/__init__.pyi +1 -1
- metaflow-stubs/plugins/pypi/conda_decorator.pyi +1 -1
- metaflow-stubs/plugins/pypi/conda_environment.pyi +3 -3
- metaflow-stubs/plugins/pypi/parsers.pyi +1 -1
- metaflow-stubs/plugins/pypi/pypi_decorator.pyi +1 -1
- metaflow-stubs/plugins/pypi/pypi_environment.pyi +1 -1
- metaflow-stubs/plugins/pypi/utils.pyi +1 -1
- metaflow-stubs/plugins/resources_decorator.pyi +1 -1
- metaflow-stubs/plugins/retry_decorator.pyi +1 -1
- metaflow-stubs/plugins/secrets/__init__.pyi +2 -2
- metaflow-stubs/plugins/secrets/inline_secrets_provider.pyi +2 -2
- metaflow-stubs/plugins/secrets/secrets_decorator.pyi +1 -1
- metaflow-stubs/plugins/snowflake/__init__.pyi +1 -1
- metaflow-stubs/plugins/storage_executor.pyi +1 -1
- metaflow-stubs/plugins/test_unbounded_foreach_decorator.pyi +1 -1
- metaflow-stubs/plugins/timeout_decorator.pyi +1 -1
- metaflow-stubs/plugins/torchtune/__init__.pyi +1 -1
- metaflow-stubs/plugins/uv/__init__.pyi +1 -1
- metaflow-stubs/plugins/uv/uv_environment.pyi +1 -1
- metaflow-stubs/profilers/__init__.pyi +1 -1
- metaflow-stubs/pylint_wrapper.pyi +1 -1
- metaflow-stubs/runner/__init__.pyi +1 -1
- metaflow-stubs/runner/deployer.pyi +29 -29
- metaflow-stubs/runner/deployer_impl.pyi +2 -2
- metaflow-stubs/runner/metaflow_runner.pyi +3 -3
- metaflow-stubs/runner/nbdeploy.pyi +1 -1
- metaflow-stubs/runner/nbrun.pyi +1 -1
- metaflow-stubs/runner/subprocess_manager.pyi +1 -1
- metaflow-stubs/runner/utils.pyi +3 -3
- metaflow-stubs/system/__init__.pyi +1 -1
- metaflow-stubs/system/system_logger.pyi +1 -1
- metaflow-stubs/system/system_monitor.pyi +1 -1
- metaflow-stubs/tagging_util.pyi +1 -1
- metaflow-stubs/tuple_util.pyi +1 -1
- metaflow-stubs/user_configs/__init__.pyi +1 -1
- metaflow-stubs/user_configs/config_decorators.pyi +5 -5
- metaflow-stubs/user_configs/config_options.pyi +2 -2
- metaflow-stubs/user_configs/config_parameters.pyi +5 -5
- {ob_metaflow_stubs-6.0.3.187.dist-info → ob_metaflow_stubs-6.0.3.188rc0.dist-info}/METADATA +1 -1
- ob_metaflow_stubs-6.0.3.188rc0.dist-info/RECORD +239 -0
- ob_metaflow_stubs-6.0.3.187.dist-info/RECORD +0 -216
- {ob_metaflow_stubs-6.0.3.187.dist-info → ob_metaflow_stubs-6.0.3.188rc0.dist-info}/WHEEL +0 -0
- {ob_metaflow_stubs-6.0.3.187.dist-info → ob_metaflow_stubs-6.0.3.188rc0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,126 @@
|
|
1
|
+
######################################################################################################
|
2
|
+
# Auto-generated Metaflow stub file #
|
3
|
+
# MF version: 2.15.18.1+obcheckpoint(0.2.4);ob(v1) #
|
4
|
+
# Generated on 2025-07-03T01:34:48.337032 #
|
5
|
+
######################################################################################################
|
6
|
+
|
7
|
+
from __future__ import annotations
|
8
|
+
|
9
|
+
import metaflow
|
10
|
+
import typing
|
11
|
+
if typing.TYPE_CHECKING:
|
12
|
+
import metaflow.mf_extensions.outerbounds.plugins.apps.core.app_config
|
13
|
+
import metaflow._vendor.click.types
|
14
|
+
import metaflow.mf_extensions.outerbounds.plugins.apps.core.app_cli
|
15
|
+
|
16
|
+
from ......_vendor import click as click
|
17
|
+
from .app_config import AppConfig as AppConfig
|
18
|
+
from .app_config import AppConfigError as AppConfigError
|
19
|
+
from .app_config import AuthType as AuthType
|
20
|
+
from .perimeters import PerimeterExtractor as PerimeterExtractor
|
21
|
+
from .cli_to_config import build_config_from_options as build_config_from_options
|
22
|
+
from .utils import MultiStepSpinner as MultiStepSpinner
|
23
|
+
from . import experimental as experimental
|
24
|
+
from .validations import deploy_validations as deploy_validations
|
25
|
+
from .code_package.code_packager import CodePackager as CodePackager
|
26
|
+
from .capsule import CapsuleDeployer as CapsuleDeployer
|
27
|
+
from .capsule import list_and_filter_capsules as list_and_filter_capsules
|
28
|
+
from .capsule import CapsuleApi as CapsuleApi
|
29
|
+
from ._state_machine import DEPLOYMENT_READY_CONDITIONS as DEPLOYMENT_READY_CONDITIONS
|
30
|
+
from .capsule import CapsuleApiException as CapsuleApiException
|
31
|
+
from .capsule import CapsuleDeploymentException as CapsuleDeploymentException
|
32
|
+
from .dependencies import bake_deployment_image as bake_deployment_image
|
33
|
+
|
34
|
+
CODE_PACKAGE_PREFIX: str
|
35
|
+
|
36
|
+
CAPSULE_DEBUG: bool
|
37
|
+
|
38
|
+
class KeyValueDictPair(metaflow._vendor.click.types.ParamType, metaclass=type):
|
39
|
+
def convert(self, value, param, ctx):
|
40
|
+
...
|
41
|
+
def __str__(self):
|
42
|
+
...
|
43
|
+
def __repr__(self):
|
44
|
+
...
|
45
|
+
...
|
46
|
+
|
47
|
+
class KeyValuePair(metaflow._vendor.click.types.ParamType, metaclass=type):
|
48
|
+
def convert(self, value, param, ctx):
|
49
|
+
...
|
50
|
+
def __str__(self):
|
51
|
+
...
|
52
|
+
def __repr__(self):
|
53
|
+
...
|
54
|
+
...
|
55
|
+
|
56
|
+
class MountMetaflowArtifact(metaflow._vendor.click.types.ParamType, metaclass=type):
|
57
|
+
def convert(self, value, param, ctx):
|
58
|
+
"""
|
59
|
+
Convert a string like "flow=MyFlow,artifact=my_model,path=/tmp/abc" or
|
60
|
+
"pathspec=MyFlow/123/foo/345/my_model,path=/tmp/abc" to a dict.
|
61
|
+
"""
|
62
|
+
...
|
63
|
+
def __str__(self):
|
64
|
+
...
|
65
|
+
def __repr__(self):
|
66
|
+
...
|
67
|
+
...
|
68
|
+
|
69
|
+
class MountSecret(metaflow._vendor.click.types.ParamType, metaclass=type):
|
70
|
+
def convert(self, value, param, ctx):
|
71
|
+
"""
|
72
|
+
Convert a string like "id=my_secret,path=/tmp/secret" to a dict.
|
73
|
+
"""
|
74
|
+
...
|
75
|
+
def __str__(self):
|
76
|
+
...
|
77
|
+
def __repr__(self):
|
78
|
+
...
|
79
|
+
...
|
80
|
+
|
81
|
+
class CommaSeparatedList(metaflow._vendor.click.types.ParamType, metaclass=type):
|
82
|
+
def convert(self, value, param, ctx):
|
83
|
+
...
|
84
|
+
def __str__(self):
|
85
|
+
...
|
86
|
+
def __repr__(self):
|
87
|
+
...
|
88
|
+
...
|
89
|
+
|
90
|
+
KVPairType: KeyValuePair
|
91
|
+
|
92
|
+
MetaflowArtifactType: MountMetaflowArtifact
|
93
|
+
|
94
|
+
SecretMountType: MountSecret
|
95
|
+
|
96
|
+
CommaSeparatedListType: CommaSeparatedList
|
97
|
+
|
98
|
+
KVDictType: KeyValueDictPair
|
99
|
+
|
100
|
+
class ColorTheme(object, metaclass=type):
|
101
|
+
...
|
102
|
+
|
103
|
+
class CliState(object, metaclass=type):
|
104
|
+
...
|
105
|
+
|
106
|
+
def print_table(data, headers):
|
107
|
+
"""
|
108
|
+
Print data in a formatted table.
|
109
|
+
"""
|
110
|
+
...
|
111
|
+
|
112
|
+
def parse_commands(app_config: metaflow.mf_extensions.outerbounds.plugins.apps.core.app_config.AppConfig, cli_command_input):
|
113
|
+
...
|
114
|
+
|
115
|
+
def deployment_instance_options(func):
|
116
|
+
...
|
117
|
+
|
118
|
+
def common_deploy_options(func):
|
119
|
+
...
|
120
|
+
|
121
|
+
def common_run_options(func):
|
122
|
+
"""
|
123
|
+
Common options for running and deploying apps.
|
124
|
+
"""
|
125
|
+
...
|
126
|
+
|
@@ -0,0 +1,98 @@
|
|
1
|
+
######################################################################################################
|
2
|
+
# Auto-generated Metaflow stub file #
|
3
|
+
# MF version: 2.15.18.1+obcheckpoint(0.2.4);ob(v1) #
|
4
|
+
# Generated on 2025-07-03T01:34:48.332432 #
|
5
|
+
######################################################################################################
|
6
|
+
|
7
|
+
from __future__ import annotations
|
8
|
+
|
9
|
+
import typing
|
10
|
+
if typing.TYPE_CHECKING:
|
11
|
+
import typing
|
12
|
+
|
13
|
+
from .cli_to_config import build_config_from_options as build_config_from_options
|
14
|
+
|
15
|
+
CODE_PACKAGE_PREFIX: str
|
16
|
+
|
17
|
+
CAPSULE_DEBUG: bool
|
18
|
+
|
19
|
+
class classproperty(property, metaclass=type):
|
20
|
+
def __get__(self, owner_self, owner_cls):
|
21
|
+
...
|
22
|
+
...
|
23
|
+
|
24
|
+
class AppConfigError(Exception, metaclass=type):
|
25
|
+
"""
|
26
|
+
Exception raised when app configuration is invalid.
|
27
|
+
"""
|
28
|
+
...
|
29
|
+
|
30
|
+
class AuthType(object, metaclass=type):
|
31
|
+
@classmethod
|
32
|
+
def enums(cls):
|
33
|
+
...
|
34
|
+
@property
|
35
|
+
def default(cls):
|
36
|
+
...
|
37
|
+
...
|
38
|
+
|
39
|
+
class AppConfig(object, metaclass=type):
|
40
|
+
"""
|
41
|
+
Class representing an Outerbounds App configuration.
|
42
|
+
"""
|
43
|
+
def __init__(self, config_dict: typing.Dict[str, typing.Any]):
|
44
|
+
"""
|
45
|
+
Initialize configuration from a dictionary.
|
46
|
+
"""
|
47
|
+
...
|
48
|
+
def set_state(self, key, value):
|
49
|
+
...
|
50
|
+
def get_state(self, key, default = None):
|
51
|
+
...
|
52
|
+
def dump_state(self):
|
53
|
+
...
|
54
|
+
def get(self, key: str, default: typing.Any = None) -> typing.Any:
|
55
|
+
"""
|
56
|
+
Get a configuration value by key.
|
57
|
+
"""
|
58
|
+
...
|
59
|
+
def validate(self):
|
60
|
+
"""
|
61
|
+
Validate the configuration against the schema.
|
62
|
+
"""
|
63
|
+
...
|
64
|
+
def set_deploy_defaults(self, packaging_directory: str):
|
65
|
+
"""
|
66
|
+
Set default values for fields that are not provided.
|
67
|
+
"""
|
68
|
+
...
|
69
|
+
def to_dict(self) -> typing.Dict[str, typing.Any]:
|
70
|
+
"""
|
71
|
+
Return the configuration as a dictionary.
|
72
|
+
"""
|
73
|
+
...
|
74
|
+
def to_yaml(self) -> str:
|
75
|
+
"""
|
76
|
+
Return the configuration as a YAML string.
|
77
|
+
"""
|
78
|
+
...
|
79
|
+
def to_json(self) -> str:
|
80
|
+
"""
|
81
|
+
Return the configuration as a JSON string.
|
82
|
+
"""
|
83
|
+
...
|
84
|
+
@classmethod
|
85
|
+
def from_file(cls, file_path: str) -> "AppConfig":
|
86
|
+
"""
|
87
|
+
Create a configuration from a file.
|
88
|
+
"""
|
89
|
+
...
|
90
|
+
def update_from_cli_options(self, options):
|
91
|
+
"""
|
92
|
+
Update configuration from CLI options using the same logic as build_config_from_options.
|
93
|
+
This ensures consistent handling of CLI options whether they come from a config file
|
94
|
+
or direct CLI input.
|
95
|
+
"""
|
96
|
+
...
|
97
|
+
...
|
98
|
+
|
@@ -0,0 +1,233 @@
|
|
1
|
+
######################################################################################################
|
2
|
+
# Auto-generated Metaflow stub file #
|
3
|
+
# MF version: 2.15.18.1+obcheckpoint(0.2.4);ob(v1) #
|
4
|
+
# Generated on 2025-07-03T01:34:48.336079 #
|
5
|
+
######################################################################################################
|
6
|
+
|
7
|
+
from __future__ import annotations
|
8
|
+
|
9
|
+
import typing
|
10
|
+
if typing.TYPE_CHECKING:
|
11
|
+
import metaflow.mf_extensions.outerbounds.plugins.apps.core._state_machine
|
12
|
+
import typing
|
13
|
+
import metaflow.mf_extensions.outerbounds.plugins.apps.core.app_config
|
14
|
+
import metaflow.mf_extensions.outerbounds.plugins.apps.core.capsule
|
15
|
+
|
16
|
+
from .utils import TODOException as TODOException
|
17
|
+
from .utils import safe_requests_wrapper as safe_requests_wrapper
|
18
|
+
from .utils import MaximumRetriesExceeded as MaximumRetriesExceeded
|
19
|
+
from .app_config import AppConfig as AppConfig
|
20
|
+
from .app_config import AuthType as AuthType
|
21
|
+
from . import experimental as experimental
|
22
|
+
from ._state_machine import CapsuleWorkerSemanticStatus as CapsuleWorkerSemanticStatus
|
23
|
+
from ._state_machine import WorkerStatus as WorkerStatus
|
24
|
+
from ._state_machine import CapsuleStatus as CapsuleStatus
|
25
|
+
from ._state_machine import DEPLOYMENT_READY_CONDITIONS as DEPLOYMENT_READY_CONDITIONS
|
26
|
+
|
27
|
+
CAPSULE_DEBUG: bool
|
28
|
+
|
29
|
+
class CapsuleStateMachine(object, metaclass=type):
|
30
|
+
"""
|
31
|
+
- Every capsule create call will return a `identifier` and a `version` of the object.
|
32
|
+
- Each update call will return a new version.
|
33
|
+
- The status.currentlyServedVersion will be the version that is currently serving traffic.
|
34
|
+
- The status.updateInProgress will be True if an upgrade is in progress.
|
35
|
+
|
36
|
+
CapsuleState Transition:
|
37
|
+
- Every capsule create call will return a `identifier` and a `version` of the object.
|
38
|
+
- Happy Path:
|
39
|
+
- First time Create :
|
40
|
+
- wait for status.updateInProgress to be set to False
|
41
|
+
- (interleved) Poll the worker endpoints to check their status
|
42
|
+
- showcase how many workers are coming up if things are on the cli side.
|
43
|
+
- If the user has set some flag like `--dont-wait-to-fully-finish` then we check the `status.currentlyServedVersion` to see if even one replica is ready to
|
44
|
+
serve traffic.
|
45
|
+
- once the status.updateInProgress is set to False, it means that the replicas are ready
|
46
|
+
- Upgrade:
|
47
|
+
- wait for status.updateInProgress to be set to False
|
48
|
+
- (interleved) Poll the worker endpoints to check their status and signal the user the number replicas coming up
|
49
|
+
- If the user has set some flag like `--dont-wait-to-fully-finish` then we check the `status.currentlyServedVersion` to see if even one replica is ready to
|
50
|
+
serve traffic.
|
51
|
+
- Unhappy Path:
|
52
|
+
- First time Create :
|
53
|
+
- wait for status.updateInProgress to be set to False,
|
54
|
+
- (interleved) Poll the workers to check their status.
|
55
|
+
- If the worker pertaining the current deployment instance version is crashlooping then crash the deployment process with the error messages and logs.
|
56
|
+
- Upgrade:
|
57
|
+
- wait for status.updateInProgress to be set to False,
|
58
|
+
- (interleved) Poll the workers to check their status.
|
59
|
+
- If the worker pertaining the current deployment instance version is crashlooping then crash the deployment process with the error messages and logs.
|
60
|
+
"""
|
61
|
+
def __init__(self, capsule_id: str, current_deployment_instance_version: str):
|
62
|
+
...
|
63
|
+
def get_status_trail(self):
|
64
|
+
...
|
65
|
+
def add_status(self, status: metaflow.mf_extensions.outerbounds.plugins.apps.core._state_machine.CapsuleStatus):
|
66
|
+
...
|
67
|
+
@property
|
68
|
+
def current_status(self):
|
69
|
+
...
|
70
|
+
@property
|
71
|
+
def out_of_cluster_url(self):
|
72
|
+
...
|
73
|
+
@property
|
74
|
+
def in_cluster_url(self):
|
75
|
+
...
|
76
|
+
@property
|
77
|
+
def update_in_progress(self):
|
78
|
+
...
|
79
|
+
@property
|
80
|
+
def currently_served_version(self):
|
81
|
+
...
|
82
|
+
@property
|
83
|
+
def ready_to_serve_traffic(self):
|
84
|
+
...
|
85
|
+
@property
|
86
|
+
def available_replicas(self):
|
87
|
+
...
|
88
|
+
def report_current_status(self, logger):
|
89
|
+
...
|
90
|
+
def save_debug_info(self, state_dir: str):
|
91
|
+
...
|
92
|
+
...
|
93
|
+
|
94
|
+
class CapsuleWorkersStateMachine(object, metaclass=type):
|
95
|
+
def __init__(self, capsule_id: str, end_state_capsule_version: str, deployment_mode: str = 'at_least_one_running', minimum_replicas: int = 1):
|
96
|
+
...
|
97
|
+
def get_status_trail(self):
|
98
|
+
...
|
99
|
+
def add_status(self, worker_list_response: typing.List[metaflow.mf_extensions.outerbounds.plugins.apps.core._state_machine.WorkerStatus]):
|
100
|
+
"""
|
101
|
+
worker_list_response: List[Dict[str, Any]]
|
102
|
+
[
|
103
|
+
{
|
104
|
+
"workerId": "c-4pqikm-659dd9ccdc-5hcwz",
|
105
|
+
"phase": "Running",
|
106
|
+
"activity": 0,
|
107
|
+
"activityDataAvailable": false,
|
108
|
+
"version": "0xhgaewiqb"
|
109
|
+
},
|
110
|
+
{
|
111
|
+
"workerId": "c-4pqikm-b8559688b-xk2jh",
|
112
|
+
"phase": "Pending",
|
113
|
+
"activity": 0,
|
114
|
+
"activityDataAvailable": false,
|
115
|
+
"version": "421h48qh95"
|
116
|
+
}
|
117
|
+
]
|
118
|
+
"""
|
119
|
+
...
|
120
|
+
def save_debug_info(self, state_dir: str):
|
121
|
+
...
|
122
|
+
def report_current_status(self, logger):
|
123
|
+
...
|
124
|
+
@property
|
125
|
+
def current_status(self) -> typing.List[metaflow.mf_extensions.outerbounds.plugins.apps.core._state_machine.WorkerStatus]:
|
126
|
+
...
|
127
|
+
def current_version_deployment_status(self) -> metaflow.mf_extensions.outerbounds.plugins.apps.core._state_machine.CapsuleWorkerSemanticStatus:
|
128
|
+
...
|
129
|
+
@property
|
130
|
+
def is_crashlooping(self) -> bool:
|
131
|
+
...
|
132
|
+
...
|
133
|
+
|
134
|
+
class CapsuleInput(object, metaclass=type):
|
135
|
+
@classmethod
|
136
|
+
def construct_exec_command(cls, commands: list):
|
137
|
+
...
|
138
|
+
@classmethod
|
139
|
+
def from_app_config(self, app_config: metaflow.mf_extensions.outerbounds.plugins.apps.core.app_config.AppConfig):
|
140
|
+
...
|
141
|
+
...
|
142
|
+
|
143
|
+
class CapsuleApiException(Exception, metaclass=type):
|
144
|
+
def __init__(self, url: str, method: str, status_code: int, text: str, message: typing.Optional[str] = None):
|
145
|
+
...
|
146
|
+
def __str__(self):
|
147
|
+
...
|
148
|
+
...
|
149
|
+
|
150
|
+
class CapsuleDeploymentException(Exception, metaclass=type):
|
151
|
+
def __init__(self, capsule_id: str, message: str):
|
152
|
+
...
|
153
|
+
def __str__(self):
|
154
|
+
...
|
155
|
+
...
|
156
|
+
|
157
|
+
class CapsuleApi(object, metaclass=type):
|
158
|
+
def __init__(self, base_url: str, perimeter: str, logger_fn = None):
|
159
|
+
...
|
160
|
+
def create(self, capsule_input: dict):
|
161
|
+
...
|
162
|
+
def get(self, capsule_id: str):
|
163
|
+
...
|
164
|
+
def list(self):
|
165
|
+
...
|
166
|
+
def delete(self, capsule_id: str):
|
167
|
+
...
|
168
|
+
def get_workers(self, capsule_id: str) -> typing.List[typing.Dict[str, typing.Any]]:
|
169
|
+
...
|
170
|
+
def logs(self, capsule_id: str, worker_id: str, previous: bool = False) -> typing.List[str]:
|
171
|
+
...
|
172
|
+
...
|
173
|
+
|
174
|
+
def list_and_filter_capsules(capsule_api: CapsuleApi, project, branch, name, tags, auth_type, capsule_id):
|
175
|
+
...
|
176
|
+
|
177
|
+
class CapsuleInfo(tuple, metaclass=type):
|
178
|
+
"""
|
179
|
+
CapsuleInfo(info, workers)
|
180
|
+
"""
|
181
|
+
@staticmethod
|
182
|
+
def __new__(_cls, info, workers):
|
183
|
+
"""
|
184
|
+
Create new instance of CapsuleInfo(info, workers)
|
185
|
+
"""
|
186
|
+
...
|
187
|
+
def __repr__(self):
|
188
|
+
"""
|
189
|
+
Return a nicely formatted representation string
|
190
|
+
"""
|
191
|
+
...
|
192
|
+
def __getnewargs__(self):
|
193
|
+
"""
|
194
|
+
Return self as a plain tuple. Used by copy and pickle.
|
195
|
+
"""
|
196
|
+
...
|
197
|
+
...
|
198
|
+
|
199
|
+
class CapsuleDeployer(object, metaclass=type):
|
200
|
+
def __init__(self, app_config: metaflow.mf_extensions.outerbounds.plugins.apps.core.app_config.AppConfig, base_url: str, create_timeout: int = 300, debug_dir: typing.Optional[str] = None, success_terminal_state_condition: str = 'at_least_one_running', readiness_wait_time: int = 20, logger_fn = None):
|
201
|
+
...
|
202
|
+
@property
|
203
|
+
def url(self):
|
204
|
+
...
|
205
|
+
@property
|
206
|
+
def capsule_api(self):
|
207
|
+
...
|
208
|
+
@property
|
209
|
+
def capsule_type(self):
|
210
|
+
...
|
211
|
+
@property
|
212
|
+
def name(self):
|
213
|
+
...
|
214
|
+
def create_input(self):
|
215
|
+
...
|
216
|
+
@property
|
217
|
+
def current_deployment_instance_version(self):
|
218
|
+
"""
|
219
|
+
The backend `create` call returns a version of the object that will be
|
220
|
+
"""
|
221
|
+
...
|
222
|
+
def create(self):
|
223
|
+
...
|
224
|
+
def get(self):
|
225
|
+
...
|
226
|
+
def get_workers(self):
|
227
|
+
...
|
228
|
+
def wait_for_terminal_state(self):
|
229
|
+
"""
|
230
|
+
"""
|
231
|
+
...
|
232
|
+
...
|
233
|
+
|
@@ -0,0 +1,17 @@
|
|
1
|
+
######################################################################################################
|
2
|
+
# Auto-generated Metaflow stub file #
|
3
|
+
# MF version: 2.15.18.1+obcheckpoint(0.2.4);ob(v1) #
|
4
|
+
# Generated on 2025-07-03T01:34:48.331800 #
|
5
|
+
######################################################################################################
|
6
|
+
|
7
|
+
from __future__ import annotations
|
8
|
+
|
9
|
+
|
10
|
+
from . import experimental as experimental
|
11
|
+
|
12
|
+
def build_config_from_options(options):
|
13
|
+
"""
|
14
|
+
Build an app configuration from CLI options.
|
15
|
+
"""
|
16
|
+
...
|
17
|
+
|
@@ -0,0 +1,12 @@
|
|
1
|
+
######################################################################################################
|
2
|
+
# Auto-generated Metaflow stub file #
|
3
|
+
# MF version: 2.15.18.1+obcheckpoint(0.2.4);ob(v1) #
|
4
|
+
# Generated on 2025-07-03T01:34:48.331280 #
|
5
|
+
######################################################################################################
|
6
|
+
|
7
|
+
from __future__ import annotations
|
8
|
+
|
9
|
+
|
10
|
+
from ......_vendor import click as metaflow_click
|
11
|
+
from ......_vendor import click as click
|
12
|
+
|
@@ -0,0 +1,12 @@
|
|
1
|
+
######################################################################################################
|
2
|
+
# Auto-generated Metaflow stub file #
|
3
|
+
# MF version: 2.15.18.1+obcheckpoint(0.2.4);ob(v1) #
|
4
|
+
# Generated on 2025-07-03T01:34:48.334481 #
|
5
|
+
######################################################################################################
|
6
|
+
|
7
|
+
from __future__ import annotations
|
8
|
+
|
9
|
+
|
10
|
+
from . import code_packager as code_packager
|
11
|
+
from .code_packager import CodePackager as CodePackager
|
12
|
+
|