frogml-cli 0.0.2__tar.gz → 0.0.4__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.2 → frogml_cli-0.0.4}/PKG-INFO +3 -3
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/__init__.py +1 -1
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/v1/audience_config.py +1 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/config/add/ui.py +1 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/phase/c_deploy/deploy_build.py +1 -1
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/ui.py +2 -2
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/create/ui.py +1 -1
- frogml_cli-0.0.4/frogml_cli/commands/models/delete/_logic.py +20 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/delete/ui.py +10 -3
- frogml_cli-0.0.4/frogml_cli/commands/models/list/_logic.py +6 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/list/ui.py +13 -7
- frogml_cli-0.0.4/frogml_cli/commands/models/list_models/_logic.py +13 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/list_models/ui.py +15 -7
- frogml_cli-0.0.4/frogml_cli/commands/models/metadata/_logic.py +13 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/metadata/ui.py +8 -4
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/pyproject.toml +3 -3
- frogml_cli-0.0.2/frogml_cli/commands/models/delete/_logic.py +0 -18
- frogml_cli-0.0.2/frogml_cli/commands/models/list/_logic.py +0 -5
- frogml_cli-0.0.2/frogml_cli/commands/models/list_models/_logic.py +0 -11
- frogml_cli-0.0.2/frogml_cli/commands/models/metadata/_logic.py +0 -12
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/README.md +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/cli.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/_logic/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/_logic/tools.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/alerts/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/alerts/alerts_commnad_group.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/alerts/delete/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/alerts/delete/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/alerts/delete/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/alerts/list/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/alerts/list/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/alerts/list/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/alerts/register/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/alerts/register/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/alerts/register/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/config_base.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/parser.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/v1/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/v1/conditions_config.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/v1/config_v1.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/v1/route_config.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/v1/spec.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/audience_api_dump.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/audience_commands_group.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/create/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/create/logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/create/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/delete/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/delete/logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/delete/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/get/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/get/logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/get/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/list/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/list/logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/list/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/update/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/update/logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/update/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/auto_scalling/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/auto_scalling/_logic/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/auto_scalling/_logic/config/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/auto_scalling/_logic/config/config.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/auto_scalling/_logic/config/parser.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/auto_scalling/attach/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/auto_scalling/attach/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/auto_scalling/attach/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/auto_scalling/autoscaling_commands_group.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/automations_commands_group.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/delete/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/delete/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/delete/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/executions/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/executions/executions_commands_group.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/executions/list/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/executions/list/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/executions/list/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/list/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/list/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/list/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/register/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/register/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/register/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/config/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/config/add/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/config/config_commands_group.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/backfill/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/backfill/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/backfill/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/delete/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/delete/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/delete/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/execution/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/execution/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/feature_store_command_group.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/list/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/list/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/pause/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/pause/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/register/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/register/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/register/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/resume/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/resume/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/trigger/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/trigger/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/build_steps.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/client_logs/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/client_logs/cli_phase_run_handler.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/client_logs/cli_trigger_build_logger.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/client_logs/logger.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/client_logs/messages.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/client_logs/spinner.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/client_logs/trigger_build_logger.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/client_logs/utils.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/phase/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/phase/a_fetch_model_code/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/phase/a_fetch_model_code/get_sdk_version_step.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/phase/b_remote_register_frogml_build/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/phase/c_deploy/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/phase/c_deploy/build_polling_status.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/util/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/util/protobuf_factory.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/util/step_decorator.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/util/text.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/wait_until_finished.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/builds/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/builds/builds_commands_group.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/builds/cancel/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/builds/cancel/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/builds/cancel/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/builds/logs/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/builds/logs/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/builds/status/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/builds/status/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/builds/status/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/create/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/create/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/delete/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/_logic/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/_logic/advance_deployment_options_handler.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/_logic/base_deploy_executor.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/_logic/deploy_config.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/_logic/deployment.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/_logic/deployment_message_helpers.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/_logic/deployment_response_handler.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/_logic/deployment_size_mapper.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/_logic/get_latest_successful_build.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/_logic/local_deployment.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/batch/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/batch/_logic/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/batch/_logic/advanced_deployment_mapper.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/batch/_logic/deploy_executor.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/batch/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/deploy_commands_group.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/realtime/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/realtime/_logic/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/realtime/_logic/advanced_deployment_mapper.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/realtime/_logic/deploy_executor.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/realtime/_logic/serving_strategy_mapper.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/realtime/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/streaming/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/streaming/_logic/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/streaming/_logic/deploy_executor.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/streaming/_logic/serving_strategy_mapper.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/deploy/streaming/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/undeploy/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/undeploy/_logic/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/undeploy/_logic/request_undeploy.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/deployments/undeploy/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/describe/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/describe/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/describe/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/cancel/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/cancel/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/cancel/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/execution_commands_group.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/report/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/report/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/report/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/start/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/start/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/start/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/status/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/status/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/executions/status/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/initialize_model_structure.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/churn/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/churn/cookiecutter.json +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/main/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/main/conda.yml +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/main/data.csv +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/main/model.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/tests/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/tests/it/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/churn/{{cookiecutter.model_directory}}/tests/it/test_churn.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/credit_risk/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/credit_risk/cookiecutter.json +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/credit_risk/{{cookiecutter.model_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/credit_risk/{{cookiecutter.model_directory}}/main/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/credit_risk/{{cookiecutter.model_directory}}/main/conda.yml +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/credit_risk/{{cookiecutter.model_directory}}/main/data.csv +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/credit_risk/{{cookiecutter.model_directory}}/main/model.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/general/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/general/cookiecutter.json +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/general/{{cookiecutter.model_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/general/{{cookiecutter.model_directory}}/{{cookiecutter.main_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/general/{{cookiecutter.model_directory}}/{{cookiecutter.main_directory}}/conda.yml +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/general/{{cookiecutter.model_directory}}/{{cookiecutter.main_directory}}/model.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/general/{{cookiecutter.model_directory}}/{{cookiecutter.test_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/general/{{cookiecutter.model_directory}}/{{cookiecutter.test_directory}}/test_qwak_model.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic/cookiecutter.json +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/main/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/main/conda.yml +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/main/model.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/tests/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/tests/it/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic/{{cookiecutter.model_directory}}/tests/it/test_titanic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/cookiecutter.json +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/main/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/main/model.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/main/pyproject.toml +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/tests/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/tests/it/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/_logic/template/titanic_poetry/{{cookiecutter.model_directory}}/tests/it/test_titanic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/init/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/list/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/list_models/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/metadata/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/models_command_group.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/runtime/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/runtime/logs/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/runtime/logs/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/runtime/runtime_commands_group.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/runtime/update/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/runtime/update/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/runtime/update/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/secrets/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/secrets/delete/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/secrets/delete/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/secrets/delete/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/secrets/get/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/secrets/get/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/secrets/get/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/secrets/secrets_commands_group.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/secrets/set/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/secrets/set/_logic.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/secrets/set/ui.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/ui_tools.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/exceptions/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/exceptions/frogml_command_exception.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/exceptions/frogml_deploy_new_build_failed.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/exceptions/frogml_resource_not_found.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/inner/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/inner/file_registry.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/inner/tools/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/inner/tools/cli_tools.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/inner/tools/config_handler.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/inner/tools/dataclasses_utils.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/inner/tools/logger/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/inner/tools/logger/logger.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/inner/tools/logger/logging.yml +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/inner/tools/tracking.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/main.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/tools/__init__.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/tools/colors.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/tools/const.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/tools/files.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/tools/log_handling.py +0 -0
- {frogml_cli-0.0.2 → frogml_cli-0.0.4}/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.4
|
4
4
|
Summary: Frogml CLI for frogml models
|
5
5
|
License: Apache-2.0
|
6
6
|
Keywords: mlops,ml,deployment,serving,model,jfrog
|
@@ -27,8 +27,8 @@ 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.
|
31
|
-
Requires-Dist: frogml-inference (>=0.0.
|
30
|
+
Requires-Dist: frogml (>=1.1.96)
|
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"
|
34
34
|
Requires-Dist: numpy (<2.0.0)
|
@@ -20,6 +20,7 @@ class AudienceConfig:
|
|
20
20
|
def to_audience_route_entry(self, index: int = 0) -> AudienceRoutesEntry:
|
21
21
|
return AudienceRoutesEntry(
|
22
22
|
audience_id=self.id,
|
23
|
+
audience_name=self.name,
|
23
24
|
order=index + 1,
|
24
25
|
routes=[route.to_route_api() for route in self.routes],
|
25
26
|
)
|
@@ -35,7 +35,7 @@ class DeployBuildStep(Step):
|
|
35
35
|
"model_id": self.context.model_id,
|
36
36
|
"instance": template_id,
|
37
37
|
}
|
38
|
-
deploy_realtime(from_file=None, out_conf=False, sync=False, **deploy_config)
|
38
|
+
deploy_realtime(from_file=None, out_conf=False, local=False, sync=False, **deploy_config)
|
39
39
|
self.build_logger.info(f"Finished deploying build {self.context.build_id}")
|
40
40
|
except Exception as e:
|
41
41
|
raise FrogmlDeployNewBuildFailedException(
|
@@ -206,8 +206,8 @@ from frogml_cli.tools.const import GPU_TYPES
|
|
206
206
|
@click.option(
|
207
207
|
"--deploy",
|
208
208
|
help="Whether you want to deploy the build if it finishes successfully. "
|
209
|
-
"Choosing this will follow the build process in the terminal and will trigger a deployment
|
210
|
-
"build finishes.",
|
209
|
+
"Choosing this will follow the build process in the terminal and will trigger a deployment in JFrogML's platform "
|
210
|
+
"when the build finishes.",
|
211
211
|
default=False,
|
212
212
|
is_flag=True,
|
213
213
|
)
|
@@ -0,0 +1,20 @@
|
|
1
|
+
from frogml._proto.qwak.models.models_pb2 import DeleteModelResponse
|
2
|
+
from frogml._proto.qwak.projects.projects_pb2 import GetProjectResponse
|
3
|
+
from frogml.core.clients.model_group_management import ModelGroupManagementClient
|
4
|
+
from frogml.core.clients.model_management import ModelsManagementClient
|
5
|
+
from frogml.core.exceptions import FrogmlException
|
6
|
+
|
7
|
+
|
8
|
+
def execute_model_delete(project_key: str, model_id: str) -> DeleteModelResponse:
|
9
|
+
model_group_response: GetProjectResponse = (
|
10
|
+
ModelGroupManagementClient().get_model_group(model_group_name=project_key)
|
11
|
+
)
|
12
|
+
is_model_exists: bool = any(
|
13
|
+
m.model_id == model_id for m in model_group_response.project.models
|
14
|
+
)
|
15
|
+
if not is_model_exists:
|
16
|
+
raise FrogmlException(f"No such model {model_id} for project {project_key}")
|
17
|
+
|
18
|
+
model_group_id: str = model_group_response.project.spec.project_id
|
19
|
+
|
20
|
+
return ModelsManagementClient().delete_model(model_group_id, model_id)
|
@@ -1,4 +1,7 @@
|
|
1
|
+
from typing import Literal
|
2
|
+
|
1
3
|
import click
|
4
|
+
from frogml._proto.qwak.models.models_pb2 import DeleteModelResponse
|
2
5
|
|
3
6
|
from frogml_cli.commands.models.delete._logic import execute_model_delete
|
4
7
|
from frogml_cli.commands.ui_tools import output_as_json
|
@@ -10,6 +13,7 @@ from frogml_cli.inner.tools.cli_tools import FrogMLCommand
|
|
10
13
|
@click.option("--model-id", metavar="NAME", required=True, help="Model name")
|
11
14
|
@click.option(
|
12
15
|
"--format",
|
16
|
+
"output_format",
|
13
17
|
default="text",
|
14
18
|
show_default=True,
|
15
19
|
type=click.Choice(["text", "json"], case_sensitive=True),
|
@@ -17,9 +21,12 @@ from frogml_cli.inner.tools.cli_tools import FrogMLCommand
|
|
17
21
|
required=False,
|
18
22
|
help="The formatting style for commands output (choose from text, json)",
|
19
23
|
)
|
20
|
-
def model_delete(
|
21
|
-
|
22
|
-
|
24
|
+
def model_delete(
|
25
|
+
project_key: str, model_id: str, output_format: Literal["text", "json"]
|
26
|
+
):
|
27
|
+
response: DeleteModelResponse = execute_model_delete(project_key, model_id)
|
28
|
+
|
29
|
+
if output_format == "json":
|
23
30
|
output_as_json(response)
|
24
31
|
else:
|
25
32
|
print(f"Model deleted\nmodel id : {model_id}")
|
@@ -0,0 +1,6 @@
|
|
1
|
+
from frogml._proto.qwak.projects.projects_pb2 import GetProjectResponse
|
2
|
+
from frogml.core.clients.model_group_management.client import ModelGroupManagementClient
|
3
|
+
|
4
|
+
|
5
|
+
def execute_models_list(project_key: str) -> GetProjectResponse:
|
6
|
+
return ModelGroupManagementClient().get_model_group(model_group_name=project_key)
|
@@ -1,4 +1,5 @@
|
|
1
1
|
from datetime import datetime
|
2
|
+
from typing import Literal
|
2
3
|
|
3
4
|
import click
|
4
5
|
from frogml._proto.qwak.projects.projects_pb2 import GetProjectResponse
|
@@ -25,6 +26,7 @@ def parse_model(model):
|
|
25
26
|
@click.option("--project-key", metavar="NAME", required=True, help="JFrog project key")
|
26
27
|
@click.option(
|
27
28
|
"--format",
|
29
|
+
"output_format",
|
28
30
|
default="text",
|
29
31
|
show_default=True,
|
30
32
|
type=click.Choice(["text", "json"], case_sensitive=True),
|
@@ -32,10 +34,14 @@ def parse_model(model):
|
|
32
34
|
required=False,
|
33
35
|
help="The formatting style for commands output (choose from text, json)",
|
34
36
|
)
|
35
|
-
def model_list(project_key: str,
|
36
|
-
|
37
|
-
columns = ["Model id", "Display name", "Creation date", "Last updated"]
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
37
|
+
def model_list(project_key: str, output_format: Literal["text", "json"]):
|
38
|
+
get_model_group_response: GetProjectResponse = execute_models_list(project_key)
|
39
|
+
columns: list[str] = ["Model id", "Display name", "Creation date", "Last updated"]
|
40
|
+
|
41
|
+
if output_format == "json":
|
42
|
+
output_as_json(get_model_group_response)
|
43
|
+
|
44
|
+
else: # output_format == "text"
|
45
|
+
output_as_table(
|
46
|
+
get_model_group_response.project.models, parse_model, headers=columns
|
47
|
+
)
|
@@ -0,0 +1,13 @@
|
|
1
|
+
from frogml._proto.qwak.models.models_pb2 import ListModelsResponse
|
2
|
+
from frogml._proto.qwak.projects.projects_pb2 import GetProjectResponse
|
3
|
+
from frogml.core.clients.model_group_management import ModelGroupManagementClient
|
4
|
+
from frogml.core.clients.model_management.client import ModelsManagementClient
|
5
|
+
|
6
|
+
|
7
|
+
def list_models(project_key: str) -> ListModelsResponse:
|
8
|
+
model_group_response: GetProjectResponse = (
|
9
|
+
ModelGroupManagementClient().get_model_group(model_group_name=project_key)
|
10
|
+
)
|
11
|
+
model_group_id: str = model_group_response.project.spec.project_id
|
12
|
+
|
13
|
+
return ModelsManagementClient().list_models(model_group_id)
|
@@ -1,12 +1,18 @@
|
|
1
|
+
from typing import Literal
|
2
|
+
|
1
3
|
import click
|
2
|
-
from frogml._proto.qwak.models.models_pb2 import
|
4
|
+
from frogml._proto.qwak.models.models_pb2 import (
|
5
|
+
DeploymentModelStatus,
|
6
|
+
ListModelsResponse,
|
7
|
+
Model,
|
8
|
+
)
|
3
9
|
|
4
10
|
from frogml_cli.commands.models.list_models._logic import list_models as _list_models
|
5
11
|
from frogml_cli.commands.ui_tools import output_as_json, output_as_table
|
6
12
|
from frogml_cli.inner.tools.cli_tools import FrogMLCommand
|
7
13
|
|
8
14
|
|
9
|
-
def parse_model(model):
|
15
|
+
def parse_model(model: Model) -> list[str]:
|
10
16
|
return [
|
11
17
|
model.model_id,
|
12
18
|
model.uuid,
|
@@ -31,6 +37,7 @@ def parse_model(model):
|
|
31
37
|
@click.option("--project-key", metavar="NAME", required=True, help="JFrog Project key")
|
32
38
|
@click.option(
|
33
39
|
"--format",
|
40
|
+
"output_format",
|
34
41
|
default="text",
|
35
42
|
show_default=True,
|
36
43
|
type=click.Choice(["text", "json"], case_sensitive=True),
|
@@ -38,9 +45,9 @@ def parse_model(model):
|
|
38
45
|
required=False,
|
39
46
|
help="The formatting style for command output (choose from text, json)",
|
40
47
|
)
|
41
|
-
def list_models(project_key,
|
42
|
-
model_list_result = _list_models(project_key)
|
43
|
-
columns = [
|
48
|
+
def list_models(project_key: str, output_format: Literal["text", "json"]):
|
49
|
+
model_list_result: ListModelsResponse = _list_models(project_key)
|
50
|
+
columns: list[str] = [
|
44
51
|
"Model id",
|
45
52
|
"Model UUID",
|
46
53
|
"Model Name",
|
@@ -54,7 +61,8 @@ def list_models(project_key, format, **kwargs):
|
|
54
61
|
"Branches",
|
55
62
|
"Deployment Status",
|
56
63
|
]
|
57
|
-
|
64
|
+
|
65
|
+
if output_format == "json":
|
58
66
|
output_as_json(model_list_result)
|
59
|
-
|
67
|
+
else: # output_format == "text"
|
60
68
|
output_as_table(model_list_result.models, parse_model, headers=columns)
|
@@ -0,0 +1,13 @@
|
|
1
|
+
from frogml._proto.qwak.models.models_pb2 import ListModelsMetadataResponse
|
2
|
+
from frogml._proto.qwak.projects.projects_pb2 import GetProjectResponse
|
3
|
+
from frogml.core.clients.model_group_management import ModelGroupManagementClient
|
4
|
+
from frogml.core.clients.model_management.client import ModelsManagementClient
|
5
|
+
|
6
|
+
|
7
|
+
def list_models_metadata(project_key: str) -> ListModelsMetadataResponse:
|
8
|
+
model_group_response: GetProjectResponse = (
|
9
|
+
ModelGroupManagementClient().get_model_group(model_group_name=project_key)
|
10
|
+
)
|
11
|
+
model_group_id: str = model_group_response.project.spec.project_id
|
12
|
+
|
13
|
+
return ModelsManagementClient().list_models_metadata(model_group_id)
|
@@ -1,6 +1,8 @@
|
|
1
1
|
import re
|
2
|
+
from typing import Literal
|
2
3
|
|
3
4
|
import click
|
5
|
+
from frogml._proto.qwak.models.models_pb2 import ListModelsMetadataResponse
|
4
6
|
from google.protobuf.json_format import MessageToDict
|
5
7
|
from tabulate import tabulate
|
6
8
|
|
@@ -45,6 +47,7 @@ def print_text_data(metadata):
|
|
45
47
|
@click.option("--project-key", metavar="NAME", required=True, help="JFrog Project key")
|
46
48
|
@click.option(
|
47
49
|
"--format",
|
50
|
+
"output_format",
|
48
51
|
default="text",
|
49
52
|
show_default=True,
|
50
53
|
type=click.Choice(["text", "json"], case_sensitive=True),
|
@@ -52,9 +55,10 @@ def print_text_data(metadata):
|
|
52
55
|
required=False,
|
53
56
|
help="The formatting style for command output (choose from text, json)",
|
54
57
|
)
|
55
|
-
def list_models_metadata(project_key,
|
56
|
-
model_list_result = _list_models_metadata(project_key)
|
57
|
-
|
58
|
+
def list_models_metadata(project_key: str, output_format: Literal["text", "json"]):
|
59
|
+
model_list_result: ListModelsMetadataResponse = _list_models_metadata(project_key)
|
60
|
+
|
61
|
+
if output_format == "json":
|
58
62
|
output_as_json(model_list_result)
|
59
|
-
|
63
|
+
else: # output_format == "text"
|
60
64
|
print_text_data(model_list_result)
|
@@ -1,6 +1,6 @@
|
|
1
1
|
[tool.poetry]
|
2
2
|
name = "frogml-cli"
|
3
|
-
version = "0.0.
|
3
|
+
version = "0.0.4"
|
4
4
|
description = "Frogml CLI for frogml models"
|
5
5
|
authors = ["JFrog Ltd. <contact@jfrog.com>"]
|
6
6
|
readme = "README.md"
|
@@ -48,8 +48,8 @@ cloudpickle = {version = "2.2.1", optional = true} # feature-store dependencies
|
|
48
48
|
pyspark = {version = "3.4.2", optional = true} # feature-store dependencies
|
49
49
|
click = "8.1.8"
|
50
50
|
catboost = ">=1.1.11"
|
51
|
-
frogml-inference = "^0.0.
|
52
|
-
frogml = ">=1.1.
|
51
|
+
frogml-inference = "^0.0.2"
|
52
|
+
frogml = ">=1.1.96"
|
53
53
|
|
54
54
|
[tool.poetry.group.dev.dependencies]
|
55
55
|
pytest = "7.2.1"
|
@@ -1,18 +0,0 @@
|
|
1
|
-
from frogml._proto.qwak.projects.projects_pb2 import GetProjectResponse
|
2
|
-
from frogml.core.clients.model_management import ModelsManagementClient
|
3
|
-
from frogml.core.clients.project.client import ProjectsManagementClient
|
4
|
-
from frogml.core.exceptions import FrogmlException
|
5
|
-
|
6
|
-
|
7
|
-
def execute_model_delete(project_key: str, model_id: str):
|
8
|
-
project_response: GetProjectResponse = ProjectsManagementClient().get_project(
|
9
|
-
project_name=project_key
|
10
|
-
)
|
11
|
-
is_model_exists: bool = any(
|
12
|
-
m.model_id == model_id for m in project_response.project.models
|
13
|
-
)
|
14
|
-
if not is_model_exists:
|
15
|
-
raise FrogmlException(f"No such model {model_id} for project {project_key}")
|
16
|
-
|
17
|
-
project_id: str = project_response.project.spec.project_id
|
18
|
-
return ModelsManagementClient().delete_model(project_id, model_id)
|
@@ -1,11 +0,0 @@
|
|
1
|
-
from frogml._proto.qwak.projects.projects_pb2 import GetProjectResponse
|
2
|
-
from frogml.core.clients.model_management.client import ModelsManagementClient
|
3
|
-
from frogml.core.clients.project.client import ProjectsManagementClient
|
4
|
-
|
5
|
-
|
6
|
-
def list_models(project_key: str):
|
7
|
-
project_response: GetProjectResponse = ProjectsManagementClient().get_project(
|
8
|
-
project_name=project_key
|
9
|
-
)
|
10
|
-
project_id: str = project_response.project.spec.project_id
|
11
|
-
return ModelsManagementClient().list_models(project_id)
|
@@ -1,12 +0,0 @@
|
|
1
|
-
from frogml._proto.qwak.projects.projects_pb2 import GetProjectResponse
|
2
|
-
from frogml.core.clients.model_management.client import ModelsManagementClient
|
3
|
-
from frogml.core.clients.project.client import ProjectsManagementClient
|
4
|
-
|
5
|
-
|
6
|
-
def list_models_metadata(project_key: str):
|
7
|
-
project_response: GetProjectResponse = ProjectsManagementClient().get_project(
|
8
|
-
project_name=project_key
|
9
|
-
)
|
10
|
-
project_id: str = project_response.project.spec.project_id
|
11
|
-
|
12
|
-
return ModelsManagementClient().list_models_metadata(project_id)
|
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.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/__init__.py
RENAMED
File without changes
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/config_base.py
RENAMED
File without changes
|
File without changes
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/v1/__init__.py
RENAMED
File without changes
|
File without changes
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/v1/config_v1.py
RENAMED
File without changes
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/audience/_logic/config/v1/route_config.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/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.2 → frogml_cli-0.0.4}/frogml_cli/commands/auto_scalling/_logic/config/__init__.py
RENAMED
File without changes
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/auto_scalling/_logic/config/config.py
RENAMED
File without changes
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/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
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/automations_commands_group.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/executions/__init__.py
RENAMED
File without changes
|
File without changes
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/automations/executions/list/__init__.py
RENAMED
File without changes
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/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
|
File without changes
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/backfill/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/execution/__init__.py
RENAMED
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.2 → frogml_cli-0.0.4}/frogml_cli/commands/feature_store/register/__init__.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
|
{frogml_cli-0.0.2 → frogml_cli-0.0.4}/frogml_cli/commands/models/build/_logic/build_steps.py
RENAMED
File without changes
|
File without changes
|