pyvider 2024-11-29
Relocated package back to src/pyvider/ with services-based architecture
226 files · 1,858+ · 12,377-

Moved package from pyvider/ back to src/pyvider/

3 files changed
  • __init__.py Package root restored under src/
  • cli.py CLI module at new location
  • version.py Version module
  • Moved all source back to src/pyvider/ from top-level pyvider/ directory with all submodules restructured decouple behavioral
    2 files
    • __init__.py
    • cli.py
  • Removed old top-level pyvider/ with all its modules including tfprotov6, provider, utils, tftypes, docs, and tests deprecate internal
    1 file
    • pyvider

Established services-based architecture with gRPC server and provider service

7 files changed
  • grpc_server.py gRPC server management (106 lines)
  • provider_service.py Initial provider service (33 lines)
  • service_registry.py Service discovery and registration (30 lines)
  • __init__.py Handler package initialization
  • apply_resource_change_handler.py Apply resource change handler
  • get_provider_schema_handler.py Get provider schema handler
  • plan_resource_change_handler.py Plan resource change handler
  • Created services layer with gRPC server management, provider service, and service registry for discovery and registration instantiate architectural
    3 files
    • grpc_server.py
    • provider_service.py
    • service_registry.py
  • Added handler modules for apply_resource_change, get_provider_schema, and plan_resource_change instantiate behavioral
    3 files
    • apply_resource_change_handler.py
    • get_provider_schema_handler.py
    • plan_resource_change_handler.py

Added core infrastructure with handshake, registry, and proto wrappers

6 files changed
  • terraform_handshake.py Terraform plugin handshake protocol (100 lines)
  • registry.py Component registration (20 lines)
  • base.py Base class definitions
  • schema_wrapper.py Proto schema wrapper (27 lines)
  • schema_wrapper.py V6 protobuf schema wrapper (191 lines)
  • schema_wrapper.py V7 schema wrapper stub for future support
  • Added Terraform plugin handshake protocol, component registry, and base class definitions instantiate behavioral
    3 files
    • terraform_handshake.py
    • registry.py
    • base.py
  • Created proto schema wrappers for v6 with v7 stub for future support instantiate behavioral
    2 files
    • schema_wrapper.py
    • schema_wrapper.py

Rebuilt test infrastructure with new directory structure

5 files changed
  • __init__.py Test package initialization
  • test_example.py Data source example tests
  • test_example.py Function example tests
  • test_example.py Resource example tests
  • test_wrappers.py Wrapper replacement tests (60 lines)
  • Removed old unit test suite and replaced with new test infrastructure organized by component type qualify internal
    5 files
    • __init__.py
    • test_example.py
    • test_example.py
    • test_example.py
    • test_wrappers.py

Cleaned up old files and added project configuration

3 files changed
  • pyproject.toml Updated project configuration
  • Makefile Build automation
  • setup.cfg Setup configuration
  • Removed old main.py, setup.py, and pyproject.toml from top level and updated project configuration baseline internal
    3 files
    • pyproject.toml
    • Makefile
    • setup.cfg
  • Added example provider Terraform configurations and documentation specify internal
    3 files
    • data-source.tf
    • provider.tf
    • resource.tf