frogml-cli 0.0.4__tar.gz → 0.0.6__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.
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/PKG-INFO +2 -2
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/__init__.py +1 -1
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/alerts/alerts_commnad_group.py +1 -1
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/alerts/register/_logic.py +15 -11
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/automations_commands_group.py +1 -1
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/register/_logic.py +6 -6
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/register/ui.py +4 -4
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/feature_store_command_group.py +1 -1
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/register/_logic.py +17 -17
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/register/ui.py +7 -7
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/client_logs/cli_phase_run_handler.py +1 -1
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/client_logs/logger.py +2 -2
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/util/step_decorator.py +1 -1
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/_logic/local_deployment.py +1 -1
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/start/ui.py +6 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/ui.py +4 -2
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/inner/file_registry.py +1 -1
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/pyproject.toml +2 -2
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/README.md +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/cli.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/_logic/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/_logic/tools.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/alerts/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/alerts/delete/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/alerts/delete/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/alerts/delete/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/alerts/list/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/alerts/list/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/alerts/list/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/alerts/register/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/alerts/register/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/config_base.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/parser.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/v1/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/v1/audience_config.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/v1/conditions_config.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/v1/config_v1.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/v1/route_config.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/v1/spec.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/audience_api_dump.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/audience_commands_group.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/create/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/create/logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/create/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/delete/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/delete/logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/delete/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/get/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/get/logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/get/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/list/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/list/logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/list/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/update/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/update/logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/update/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/auto_scalling/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/auto_scalling/_logic/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/auto_scalling/_logic/config/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/auto_scalling/_logic/config/config.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/auto_scalling/_logic/config/parser.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/auto_scalling/attach/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/auto_scalling/attach/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/auto_scalling/attach/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/auto_scalling/autoscaling_commands_group.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/delete/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/delete/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/delete/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/executions/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/executions/executions_commands_group.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/executions/list/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/executions/list/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/executions/list/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/list/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/list/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/list/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/register/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/config/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/config/add/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/config/add/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/config/config_commands_group.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/backfill/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/backfill/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/backfill/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/delete/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/delete/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/delete/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/execution/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/execution/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/list/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/list/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/pause/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/pause/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/register/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/resume/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/resume/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/trigger/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/trigger/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/build_steps.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/client_logs/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/client_logs/cli_trigger_build_logger.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/client_logs/messages.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/client_logs/spinner.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/client_logs/trigger_build_logger.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/client_logs/utils.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/phase/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/phase/a_fetch_model_code/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/phase/a_fetch_model_code/get_sdk_version_step.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/phase/b_remote_register_frogml_build/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/phase/c_deploy/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/phase/c_deploy/build_polling_status.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/phase/c_deploy/deploy_build.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/util/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/util/protobuf_factory.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/util/text.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/wait_until_finished.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/builds/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/builds/builds_commands_group.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/builds/cancel/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/builds/cancel/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/builds/cancel/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/builds/logs/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/builds/logs/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/builds/status/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/builds/status/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/builds/status/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/create/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/create/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/create/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/delete/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/delete/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/delete/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/_logic/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/_logic/advance_deployment_options_handler.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/_logic/base_deploy_executor.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/_logic/deploy_config.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/_logic/deployment.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/_logic/deployment_message_helpers.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/_logic/deployment_response_handler.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/_logic/deployment_size_mapper.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/_logic/get_latest_successful_build.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/batch/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/batch/_logic/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/batch/_logic/advanced_deployment_mapper.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/batch/_logic/deploy_executor.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/batch/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/deploy_commands_group.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/realtime/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/realtime/_logic/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/realtime/_logic/advanced_deployment_mapper.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/realtime/_logic/deploy_executor.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/realtime/_logic/serving_strategy_mapper.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/realtime/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/streaming/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/streaming/_logic/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/streaming/_logic/deploy_executor.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/streaming/_logic/serving_strategy_mapper.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/deploy/streaming/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/undeploy/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/undeploy/_logic/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/undeploy/_logic/request_undeploy.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/deployments/undeploy/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/describe/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/describe/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/describe/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/cancel/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/cancel/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/cancel/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/execution_commands_group.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/report/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/report/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/report/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/start/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/start/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/status/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/status/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/executions/status/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/initialize_model_structure.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/churn/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/churn/cookiecutter.json +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/main/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/main/conda.yml +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/main/data.csv +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/main/model.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/tests/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/tests/it/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/tests/it/test_churn.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/credit_risk/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/credit_risk/cookiecutter.json +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/credit_risk/{{cookiecutter.model_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/credit_risk/{{cookiecutter.model_directory}}/main/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/credit_risk/{{cookiecutter.model_directory}}/main/conda.yml +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/credit_risk/{{cookiecutter.model_directory}}/main/data.csv +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/credit_risk/{{cookiecutter.model_directory}}/main/model.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/general/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/general/cookiecutter.json +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/general/{{cookiecutter.model_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/general/{{cookiecutter.model_directory}}/{{cookiecutter.main_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/general/{{cookiecutter.model_directory}}/{{cookiecutter.main_directory}}/conda.yml +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/general/{{cookiecutter.model_directory}}/{{cookiecutter.main_directory}}/model.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/general/{{cookiecutter.model_directory}}/{{cookiecutter.test_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/general/{{cookiecutter.model_directory}}/{{cookiecutter.test_directory}}/test_qwak_model.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic/cookiecutter.json +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/main/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/main/conda.yml +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/main/model.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/tests/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/tests/it/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/tests/it/test_titanic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/cookiecutter.json +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/main/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/main/model.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/main/pyproject.toml +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/tests/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/tests/it/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/tests/it/test_titanic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/list/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/list/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/list/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/list_models/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/list_models/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/list_models/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/metadata/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/metadata/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/metadata/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/models_command_group.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/runtime/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/runtime/logs/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/runtime/logs/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/runtime/runtime_commands_group.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/runtime/update/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/runtime/update/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/runtime/update/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/secrets/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/secrets/delete/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/secrets/delete/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/secrets/delete/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/secrets/get/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/secrets/get/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/secrets/get/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/secrets/secrets_commands_group.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/secrets/set/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/secrets/set/_logic.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/secrets/set/ui.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/ui_tools.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/exceptions/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/exceptions/frogml_command_exception.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/exceptions/frogml_deploy_new_build_failed.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/exceptions/frogml_resource_not_found.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/inner/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/inner/tools/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/inner/tools/cli_tools.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/inner/tools/config_handler.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/inner/tools/dataclasses_utils.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/inner/tools/logger/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/inner/tools/logger/logger.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/inner/tools/logger/logging.yml +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/inner/tools/tracking.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/main.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/tools/__init__.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/tools/colors.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/tools/const.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/tools/files.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/tools/log_handling.py +0 -0
- {frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/tools/utils.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.3
|
2
2
|
Name: frogml-cli
|
3
|
-
Version: 0.0.
|
3
|
+
Version: 0.0.6
|
4
4
|
Summary: Frogml CLI for frogml models
|
5
5
|
License: Apache-2.0
|
6
6
|
Keywords: mlops,ml,deployment,serving,model,jfrog
|
@@ -27,7 +27,7 @@ Requires-Dist: click (==8.1.8)
|
|
27
27
|
Requires-Dist: cloudpickle (==2.2.1) ; extra == "feature-store"
|
28
28
|
Requires-Dist: cookiecutter
|
29
29
|
Requires-Dist: croniter (==1.4.1)
|
30
|
-
Requires-Dist: frogml (>=1.1.
|
30
|
+
Requires-Dist: frogml (>=1.1.115,<2)
|
31
31
|
Requires-Dist: frogml-inference (>=0.0.2,<0.0.3)
|
32
32
|
Requires-Dist: gitpython (>=2.1.0)
|
33
33
|
Requires-Dist: joblib (>=1.1.0,<2.0.0) ; extra == "batch" or extra == "feedback"
|
@@ -7,7 +7,7 @@ from frogml_cli.commands.alerts.register.ui import register_channel
|
|
7
7
|
|
8
8
|
@click.group(
|
9
9
|
name="alerts",
|
10
|
-
help="Commands for interacting with
|
10
|
+
help="Commands for interacting with JFrogML alerts System",
|
11
11
|
)
|
12
12
|
def alerts_commands_group():
|
13
13
|
pass
|
@@ -5,29 +5,34 @@ from typing import List
|
|
5
5
|
from frogml.core.clients.alerts_registry import AlertingRegistryClient
|
6
6
|
from frogml.core.clients.alerts_registry.channel import Channel
|
7
7
|
|
8
|
-
from frogml_cli.inner.file_registry import
|
8
|
+
from frogml_cli.inner.file_registry import (
|
9
|
+
extract_class_objects,
|
10
|
+
list_frogml_python_files,
|
11
|
+
)
|
9
12
|
from frogml_cli.inner.tools.cli_tools import ask_yesno
|
10
13
|
from frogml_cli.tools.utils import frogml_spinner
|
11
14
|
|
12
15
|
FROGML_alerts_DELIMITER = "----------------------------------------"
|
13
16
|
|
14
17
|
|
15
|
-
def _register_channels(
|
18
|
+
def _register_channels(frogml_python_files, alerts_client, force):
|
16
19
|
"""
|
17
20
|
Register Channels
|
18
21
|
|
19
22
|
Args:
|
20
|
-
|
23
|
+
frogml_python_files: a list of python files containing frogml package imports
|
21
24
|
alerts_client: AlertingRegistryClient alerts service client
|
22
25
|
force: boolean determining if to force register all encountered Channel objects
|
23
26
|
"""
|
24
27
|
with frogml_spinner(
|
25
28
|
begin_text="Looking for channels to register", print_callback=print
|
26
29
|
):
|
27
|
-
|
30
|
+
frogml_channels: List[Channel] = extract_class_objects(
|
31
|
+
frogml_python_files, Channel
|
32
|
+
)
|
28
33
|
|
29
|
-
print(f"👀 Found {len(
|
30
|
-
for channel, source_file_path in
|
34
|
+
print(f"👀 Found {len(frogml_channels)} Channels")
|
35
|
+
for channel, source_file_path in frogml_channels:
|
31
36
|
channel_id, existing_channel = alerts_client.get_alerting_channel(channel.name)
|
32
37
|
if existing_channel:
|
33
38
|
if ask_yesno(
|
@@ -53,20 +58,19 @@ def execute_register_channel(path: Path, force: bool):
|
|
53
58
|
path = Path(path)
|
54
59
|
|
55
60
|
if path.is_file():
|
56
|
-
|
61
|
+
frogml_python_files = [(str(path), os.path.abspath(path))]
|
57
62
|
elif Path.is_dir(path):
|
58
63
|
with frogml_spinner(
|
59
64
|
begin_text="Recursively looking for python files in input dir",
|
60
65
|
print_callback=print,
|
61
66
|
) as sp:
|
62
|
-
|
63
|
-
print(
|
67
|
+
frogml_python_files = list_frogml_python_files(path, sp)
|
68
|
+
print(frogml_python_files)
|
64
69
|
print(sp)
|
65
|
-
pass
|
66
70
|
|
67
71
|
alerts_client = AlertingRegistryClient()
|
68
72
|
_register_channels(
|
69
|
-
|
73
|
+
frogml_python_files=frogml_python_files,
|
70
74
|
alerts_client=alerts_client,
|
71
75
|
force=force,
|
72
76
|
)
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/automations_commands_group.py
RENAMED
@@ -17,7 +17,7 @@ AUTOMATION = "automation"
|
|
17
17
|
|
18
18
|
@click.group(
|
19
19
|
name="automations",
|
20
|
-
help="Commands for interacting with
|
20
|
+
help="Commands for interacting with JFrogML Automations",
|
21
21
|
)
|
22
22
|
def automations_commands_group():
|
23
23
|
# Click commands group injection
|
@@ -10,23 +10,23 @@ from frogml_cli.tools.utils import frogml_spinner
|
|
10
10
|
DELIMITER = "----------------------------------------"
|
11
11
|
|
12
12
|
|
13
|
-
def register_automations(
|
13
|
+
def register_automations(frogml_python_files: List[str], force: bool):
|
14
14
|
"""
|
15
15
|
Register Automation Entities Objects
|
16
16
|
|
17
17
|
Args:
|
18
|
-
|
18
|
+
frogml_python_files: a list of python files containing frogml package imports
|
19
19
|
force: to force
|
20
20
|
"""
|
21
21
|
with frogml_spinner(
|
22
22
|
begin_text="Finding Automations to register", print_callback=print
|
23
23
|
):
|
24
|
-
|
25
|
-
|
24
|
+
frogml_automations: List[Automation] = extract_class_objects(
|
25
|
+
frogml_python_files, Automation
|
26
26
|
)
|
27
27
|
client = AutomationsManagementClient()
|
28
|
-
print(f"Found {len(
|
29
|
-
for automation, source_file_path in
|
28
|
+
print(f"Found {len(frogml_automations)} Automations")
|
29
|
+
for automation, source_file_path in frogml_automations:
|
30
30
|
existing_automation = client.get_automation_by_name(automation.name)
|
31
31
|
if existing_automation:
|
32
32
|
if ask_yesno(
|
@@ -4,7 +4,7 @@ from pathlib import Path
|
|
4
4
|
import click
|
5
5
|
|
6
6
|
from frogml_cli.commands.automations.register._logic import register_automations
|
7
|
-
from frogml_cli.inner.file_registry import
|
7
|
+
from frogml_cli.inner.file_registry import list_frogml_python_files
|
8
8
|
from frogml_cli.inner.tools.cli_tools import FrogMLCommand
|
9
9
|
from frogml_cli.tools.utils import frogml_spinner
|
10
10
|
|
@@ -33,12 +33,12 @@ from frogml_cli.tools.utils import frogml_spinner
|
|
33
33
|
def register(path: Path, force: bool, **kwargs):
|
34
34
|
path = Path(path) if path else Path.cwd()
|
35
35
|
if path.is_file():
|
36
|
-
|
36
|
+
frogml_python_files = [(str(path), os.path.abspath(path))]
|
37
37
|
elif Path.is_dir(path):
|
38
38
|
with frogml_spinner(
|
39
39
|
begin_text="Recursively looking for python files in input dir",
|
40
40
|
print_callback=print,
|
41
41
|
) as sp:
|
42
|
-
|
42
|
+
frogml_python_files = list_frogml_python_files(path, sp)
|
43
43
|
|
44
|
-
register_automations(
|
44
|
+
register_automations(frogml_python_files, force)
|
@@ -12,7 +12,7 @@ from frogml_cli.commands.feature_store.trigger.ui import trigger_feature_set
|
|
12
12
|
|
13
13
|
@click.group(
|
14
14
|
name="features",
|
15
|
-
help="Commands for interacting with
|
15
|
+
help="Commands for interacting with JFrogML Feature Store",
|
16
16
|
)
|
17
17
|
def feature_store_commands_group():
|
18
18
|
# Click commands group injection
|
@@ -32,7 +32,7 @@ DELIMITER = "----------------------------------------"
|
|
32
32
|
|
33
33
|
|
34
34
|
def _register_entities(
|
35
|
-
|
35
|
+
frogml_python_files: List[Tuple[str, str]],
|
36
36
|
registry: FeatureRegistryClient,
|
37
37
|
force: bool,
|
38
38
|
):
|
@@ -40,19 +40,19 @@ def _register_entities(
|
|
40
40
|
Register Feature Store Entity Objects
|
41
41
|
|
42
42
|
Args:
|
43
|
-
|
43
|
+
frogml_python_files: a list of python files containing frogml package imports
|
44
44
|
registry: FeatureRegistryClient
|
45
45
|
force: boolean determining if to force register all encountered Entity objects
|
46
46
|
"""
|
47
47
|
with frogml_spinner(
|
48
48
|
begin_text="Finding Entities to register", print_callback=print
|
49
49
|
):
|
50
|
-
|
51
|
-
|
50
|
+
frogml_entities: List[Tuple[Entity, str]] = extract_class_objects(
|
51
|
+
frogml_python_files, Entity
|
52
52
|
)
|
53
53
|
|
54
|
-
print(f"👀 Found {len(
|
55
|
-
for entity, source_file_path in
|
54
|
+
print(f"👀 Found {len(frogml_entities)} Entities")
|
55
|
+
for entity, source_file_path in frogml_entities:
|
56
56
|
existing_entity = registry.get_entity_by_name(entity.name)
|
57
57
|
if existing_entity:
|
58
58
|
if ask_yesno(
|
@@ -73,7 +73,7 @@ def _register_entities(
|
|
73
73
|
|
74
74
|
|
75
75
|
def _register_data_sources(
|
76
|
-
|
76
|
+
frogml_python_files: List[Tuple[str, str]],
|
77
77
|
registry: FeatureRegistryClient,
|
78
78
|
force: bool,
|
79
79
|
no_validation: bool,
|
@@ -83,7 +83,7 @@ def _register_data_sources(
|
|
83
83
|
Register Feature Store Data Source Objects
|
84
84
|
|
85
85
|
Args:
|
86
|
-
|
86
|
+
frogml_python_files: a list of python files containing frogml package imports
|
87
87
|
registry: FeatureRegistryClient
|
88
88
|
force: boolean determining if to force register all encountered Data Source objects
|
89
89
|
no_validation: whether to validate entities
|
@@ -92,12 +92,12 @@ def _register_data_sources(
|
|
92
92
|
with frogml_spinner(
|
93
93
|
begin_text="Finding Data Sources to register", print_callback=print
|
94
94
|
):
|
95
|
-
|
96
|
-
|
95
|
+
frogml_sources: List[Tuple[BaseSource, str]] = extract_class_objects(
|
96
|
+
frogml_python_files, BaseSource
|
97
97
|
)
|
98
98
|
|
99
|
-
print(f"👀 Found {len(
|
100
|
-
for data_source, source_file_path in
|
99
|
+
print(f"👀 Found {len(frogml_sources)} Data Sources")
|
100
|
+
for data_source, source_file_path in frogml_sources:
|
101
101
|
validation_failed = False
|
102
102
|
artifact_url: Optional[str] = None
|
103
103
|
|
@@ -166,7 +166,7 @@ def _handle_data_source_validation(
|
|
166
166
|
|
167
167
|
|
168
168
|
def _register_features_sets(
|
169
|
-
|
169
|
+
frogml_python_files: List[Tuple[str, str]],
|
170
170
|
registry: FeatureRegistryClient,
|
171
171
|
force: bool,
|
172
172
|
git_commit: str,
|
@@ -178,7 +178,7 @@ def _register_features_sets(
|
|
178
178
|
Register Feature Store Feature Set Objects
|
179
179
|
|
180
180
|
Args:
|
181
|
-
|
181
|
+
frogml_python_files: a list of python files containing frogml package imports
|
182
182
|
registry: FeatureRegistryClient
|
183
183
|
force: boolean determining if to force register all encountered Feature Set objects
|
184
184
|
git_commit: the git commit of the parent folder
|
@@ -188,11 +188,11 @@ def _register_features_sets(
|
|
188
188
|
with frogml_spinner(
|
189
189
|
begin_text="Finding Feature Sets to register", print_callback=print
|
190
190
|
):
|
191
|
-
|
191
|
+
frogml_feature_sets = extract_class_objects(frogml_python_files, BaseFeatureSet)
|
192
192
|
|
193
|
-
print(f"👀 Found {len(
|
193
|
+
print(f"👀 Found {len(frogml_feature_sets)} Feature Set(s)")
|
194
194
|
|
195
|
-
for featureset, source_file_path in
|
195
|
+
for featureset, source_file_path in frogml_feature_sets:
|
196
196
|
featureset = cast(BaseFeatureSet, featureset)
|
197
197
|
existing_feature_set: ProtoGetFeatureSetByNameResponse = (
|
198
198
|
registry.get_feature_set_by_name(featureset.name)
|
@@ -10,7 +10,7 @@ from frogml_cli.commands.feature_store.register._logic import (
|
|
10
10
|
_register_entities,
|
11
11
|
_register_features_sets,
|
12
12
|
)
|
13
|
-
from frogml_cli.inner.file_registry import
|
13
|
+
from frogml_cli.inner.file_registry import list_frogml_python_files
|
14
14
|
from frogml_cli.inner.tools.cli_tools import FrogMLCommand
|
15
15
|
from frogml_cli.tools.utils import frogml_spinner
|
16
16
|
|
@@ -65,7 +65,7 @@ def register_fs_objects(
|
|
65
65
|
fs_validation_ds_limit: Optional[int],
|
66
66
|
**kwargs,
|
67
67
|
):
|
68
|
-
|
68
|
+
frogml_python_files: List[Tuple[str, str]]
|
69
69
|
|
70
70
|
if not path:
|
71
71
|
path = Path.cwd()
|
@@ -73,13 +73,13 @@ def register_fs_objects(
|
|
73
73
|
path = Path(path)
|
74
74
|
|
75
75
|
if path.is_file():
|
76
|
-
|
76
|
+
frogml_python_files = [(str(path), os.path.abspath(path))]
|
77
77
|
elif Path.is_dir(path):
|
78
78
|
with frogml_spinner(
|
79
79
|
begin_text="Recursively looking for python files in input dir",
|
80
80
|
print_callback=print,
|
81
81
|
) as sp:
|
82
|
-
|
82
|
+
frogml_python_files = list_frogml_python_files(path, sp)
|
83
83
|
|
84
84
|
try:
|
85
85
|
import git
|
@@ -90,10 +90,10 @@ def register_fs_objects(
|
|
90
90
|
git_commit = None
|
91
91
|
|
92
92
|
registry_client = FeatureRegistryClient()
|
93
|
-
_register_entities(
|
93
|
+
_register_entities(frogml_python_files, registry_client, force)
|
94
94
|
|
95
95
|
_register_data_sources(
|
96
|
-
|
96
|
+
frogml_python_files,
|
97
97
|
registry_client,
|
98
98
|
force,
|
99
99
|
no_validation,
|
@@ -101,7 +101,7 @@ def register_fs_objects(
|
|
101
101
|
)
|
102
102
|
|
103
103
|
_register_features_sets(
|
104
|
-
|
104
|
+
frogml_python_files,
|
105
105
|
registry_client,
|
106
106
|
force,
|
107
107
|
git_commit,
|
@@ -18,7 +18,7 @@ from .utils import zip_logs
|
|
18
18
|
class CLIPhaseRunHandler(PhaseRunHandler):
|
19
19
|
BUILD_IN_PROGRESS_FORMAT = "Build phase in progress: {}"
|
20
20
|
BUILD_FINISHED_FORMAT = "Phase successfully finished: {} after {} seconds"
|
21
|
-
KEYBOARD_INTERRUPT_FORMAT = "\n{color}Stopping
|
21
|
+
KEYBOARD_INTERRUPT_FORMAT = "\n{color}Stopping JFrogML build (ctrl-c)"
|
22
22
|
BUILD_FAILURE_FORMAT = "Build phase failed: {} after {} seconds"
|
23
23
|
PIPELINE_ERROR = "\n{color}{ex}"
|
24
24
|
SPINNER_FINISH = "✅"
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/client_logs/logger.py
RENAMED
@@ -10,7 +10,7 @@ from pathlib import Path
|
|
10
10
|
from frogml.core.inner.build_config.build_config_v1 import BuildConfigV1
|
11
11
|
from frogml.core.inner.build_logic.constants.host_resource import HOST_FROGML_HIDDEN_FOLDER
|
12
12
|
|
13
|
-
from frogml_cli import __version__ as
|
13
|
+
from frogml_cli import __version__ as frogml_cli_version
|
14
14
|
from frogml_cli.inner.tools.logger import setup_frogml_logger
|
15
15
|
from frogml_cli.inner.tools.logger.logger import (
|
16
16
|
BUILD_LOCAL_FILE_HANDLER_NAME,
|
@@ -84,5 +84,5 @@ def setup_logger(
|
|
84
84
|
|
85
85
|
def log_system_information(destination: Path):
|
86
86
|
(destination / "python_version").write_text(sys.version)
|
87
|
-
(destination / "
|
87
|
+
(destination / "frogml_cli_version").write_text(frogml_cli_version)
|
88
88
|
(destination / "os_detail").write_text(platform.platform())
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/models/build/_logic/util/step_decorator.py
RENAMED
@@ -48,7 +48,7 @@ def build_failure_handler():
|
|
48
48
|
|
49
49
|
def cleaning_up_after_build(step: Step):
|
50
50
|
if os.getenv("QWAK_DEBUG") != "true":
|
51
|
-
step.build_logger.debug("Removing
|
51
|
+
step.build_logger.debug("Removing FrogML temp artifacts directory")
|
52
52
|
shutil.rmtree(step.context.host_temp_local_build_dir, ignore_errors=True)
|
53
53
|
|
54
54
|
|
@@ -170,7 +170,7 @@ def _docker_login(docker_client):
|
|
170
170
|
)
|
171
171
|
|
172
172
|
except Exception as e:
|
173
|
-
raise FrogmlException(f"Failed to login to
|
173
|
+
raise FrogmlException(f"Failed to login to FrogML's container registry: {e}")
|
174
174
|
|
175
175
|
|
176
176
|
def _get_aws_credentials():
|
@@ -82,6 +82,12 @@ logger = get_frogml_logger()
|
|
82
82
|
required=False,
|
83
83
|
help="The access secret secret name (should be created before by using `frogml secret`).",
|
84
84
|
)
|
85
|
+
@click.option(
|
86
|
+
"--session-token",
|
87
|
+
type=str,
|
88
|
+
required=False,
|
89
|
+
help="The session token secret name (should be created before by using `frogml secret`).",
|
90
|
+
)
|
85
91
|
@click.option(
|
86
92
|
"--job-timeout",
|
87
93
|
type=int,
|
@@ -30,7 +30,7 @@ MODELS_INIT_EXAMPLE_CHOICES: List[str] = get_models_init_example_choices()
|
|
30
30
|
metavar="NAME",
|
31
31
|
required=False,
|
32
32
|
type=click.Choice(MODELS_INIT_EXAMPLE_CHOICES, case_sensitive=True),
|
33
|
-
help=f"Generate a fully functioning example of a
|
33
|
+
help=f"Generate a fully functioning example of a FrogML based model. Options: {' / '.join(MODELS_INIT_EXAMPLE_CHOICES)}",
|
34
34
|
)
|
35
35
|
@click.argument("uri", metavar="URI", required=True)
|
36
36
|
def model_init(
|
@@ -61,5 +61,7 @@ def model_init(
|
|
61
61
|
try:
|
62
62
|
initialize_model_structure(uri, template, logger, **template_args)
|
63
63
|
except Exception as e:
|
64
|
-
logger.error(
|
64
|
+
logger.error(
|
65
|
+
f"Failed to initialize a FrogML model structure. Error reason:\n{e}"
|
66
|
+
)
|
65
67
|
exit(1)
|
@@ -8,7 +8,7 @@ from typing import List, Tuple
|
|
8
8
|
from yaspin.core import Yaspin
|
9
9
|
|
10
10
|
|
11
|
-
def
|
11
|
+
def list_frogml_python_files(path: Path, sp: Yaspin) -> List[Tuple[str, str]]:
|
12
12
|
"""
|
13
13
|
Helper function which finds python files with qwak imports in a given module
|
14
14
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
[tool.poetry]
|
2
2
|
name = "frogml-cli"
|
3
|
-
version = "0.0.
|
3
|
+
version = "0.0.6"
|
4
4
|
description = "Frogml CLI for frogml models"
|
5
5
|
authors = ["JFrog Ltd. <contact@jfrog.com>"]
|
6
6
|
readme = "README.md"
|
@@ -49,7 +49,7 @@ pyspark = {version = "3.4.2", optional = true} # feature-store dependencies
|
|
49
49
|
click = "8.1.8"
|
50
50
|
catboost = ">=1.1.11"
|
51
51
|
frogml-inference = "^0.0.2"
|
52
|
-
frogml = ">=1.1.
|
52
|
+
frogml = ">=1.1.115,<2"
|
53
53
|
|
54
54
|
[tool.poetry.group.dev.dependencies]
|
55
55
|
pytest = "7.2.1"
|
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
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/__init__.py
RENAMED
File without changes
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/config_base.py
RENAMED
File without changes
|
File without changes
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/v1/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/v1/config_v1.py
RENAMED
File without changes
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/_logic/config/v1/route_config.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/audience/audience_commands_group.py
RENAMED
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
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/auto_scalling/_logic/config/__init__.py
RENAMED
File without changes
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/auto_scalling/_logic/config/config.py
RENAMED
File without changes
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/auto_scalling/_logic/config/parser.py
RENAMED
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
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/executions/__init__.py
RENAMED
File without changes
|
File without changes
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/executions/list/__init__.py
RENAMED
File without changes
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/automations/executions/list/_logic.py
RENAMED
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
|
{frogml_cli-0.0.4 → frogml_cli-0.0.6}/frogml_cli/commands/feature_store/backfill/__init__.py
RENAMED
File without changes
|
File without changes
|