QTZPOC-20: Implement model import workflow for .sientia bundles Introduces the import_model workflow and its associated activities to enable importing .sientia bundles into MLflow and MongoDB. This includes: * New core workflow and activity logic for handling bundle download, decryption, validation, MLflow provisioning (experiments, runs, registered versions), and MongoDB model document creation. * Comprehensive E2E and unit test suites, including a dedicated test harness and a manual run script for development. * Updated .env.example and README.md with new configurations and usage instructions. * Ensures correct MLflow model source resolution for legacy loader compatibility and robust MongoDB document management. * Refactors existing utility scripts into a scripts/ directory.
23 lines
1.0 KiB
Plaintext
23 lines
1.0 KiB
Plaintext
# Development and Testing Dependencies
|
|
# These packages are only needed for development, testing, and code quality checks
|
|
# Install with: pip install -r requirements-dev.txt
|
|
|
|
# Code Quality & Linting
|
|
ruff>=0.1.0 # Fast Python linter and formatter (replaces flake8, black, isort)
|
|
mypy>=1.7.0 # Static type checker
|
|
bandit>=1.7.5 # Security vulnerability scanner
|
|
pandas-stubs>=2.0.0 # Type stubs for pandas
|
|
types-requests>=2.31.0 # Type stubs for requests
|
|
|
|
# Testing
|
|
pytest>=7.4.0 # Testing framework
|
|
pytest-cov>=4.1.0 # Coverage plugin for pytest
|
|
pytest-asyncio>=0.21.0 # Async test support (already in main requirements)
|
|
testcontainers[postgres,minio,mongodb] # PostgreSQL, MinIO and MongoDB containers for E2E tests
|
|
|
|
# Development Tools
|
|
ipython>=8.12.0 # Enhanced Python shell
|
|
ipdb>=0.13.13 # IPython debugger
|
|
ipykernel==6.30.1 # IPython kernel for Jupyter notebooks
|
|
python-dotenv>=1.0.0 # .env loading for scripts/import_model_manual_run.py
|