pyvider
2024-11-24
Initial project establishment replacing tfppf with pyvider architecture
529 files · 86,163+ · 3,659-
Core pyvider package with CLI, conversion, gRPC handler, and provider abstractions
11 files changed
__main__.pyCLI entry point for running the provider with gRPC server startup, health checks, and TLS configurationhandler.pygRPC request handler implementing Terraform plugin protocol v6conversionBase converters, schema conversion, JSON serialization, and Terraform type mappingcoreBase types, dependency injector, services layer, and capability abstractionsprovidersBase provider class, configuration, and provider implementationresourcesBase resource class, context, decorators, lifecycle management, and protocol definitionsfunctionsFunction base class, adapters, and decorators for Terraform provider functionsdata_sourcesBase class, decorators, and registry for data source implementationsexceptionsException hierarchy for conversion, foundation, function, gRPC, provider, registry, resource, schema, serialization, and validation errorshubComponent discovery, registration, capabilities, decorators, protocols, and validatorsutilsCrypto utilities and debug helpers
- Created CLI entry point for running the provider with gRPC server startup, health checks, and TLS configuration
instantiate
behavioral
1 file
__main__.py
- Built conversion module with base converters, schema conversion, JSON serialization, and Terraform type mapping utilities
instantiate
behavioral
1 file
conversion
- Added core module with base types, dependency injector, services layer, and capability abstractions
instantiate
architectural
1 file
core
- Implemented gRPC request handler for Terraform plugin protocol v6
instantiate
architectural
1 file
handler.py
- Created providers module with base provider class, configuration, and provider implementation
instantiate
behavioral
1 file
providers
- Added resources module with base resource class, context, decorators, lifecycle management, and protocol definitions
instantiate
behavioral
1 file
resources
- Built functions module with function base class, adapters, and decorators
instantiate
behavioral
1 file
functions
- Added data sources module with base class, decorators, and registry
instantiate
behavioral
1 file
data_sources
- Created exception hierarchy covering all major subsystems
harden
behavioral
1 file
exceptions
- Added hub module for component discovery, registration, capabilities, and validation
instantiate
behavioral
1 file
hub
Removed legacy tfppf package
1 file changed
tfppfEntire legacy package removed including provider, schema, resources, data sources, gRPC helpers, protocol utilities, protobuf definitions, and type system
Component system with capabilities, data sources, resources, and examples
5 files changed
fake_cloud.pyFake cloud capability for development and testingfake_cloud_auth.pyFake cloud auth capability for development and testingfile_info.pyFile metadata data sourcefile_content.pyFile content resource management (537 lines)disabledExperimental/WIP components for env variables, HTTP API, numeric functions, string manipulation, database, dynamic config, key-value store
- Added fake cloud and auth capabilities for development and testing
qualify
internal
2 files
fake_cloud.pyfake_cloud_auth.py
- Created file info data source for file metadata
instantiate
internal
1 file
file_info.py
- Added file content resource management implementation
instantiate
behavioral
1 file
file_content.py
- Included disabled directory with experimental components for env variables, HTTP API, numeric functions, string manipulation, and more
instantiate
internal
1 file
disabled
Example components and BDD test suite
5 files changed
zipcode.pyZipcode data source example with testrandom_complex_object.pyRandom complex object function exampleverify_zipcode.pyZipcode verification function exampletftypes_attribute_path.featureBDD scenarios for AttributePathtftypes_attribute_path_steps.pyStep definitions for AttributePath BDD tests
- Added zipcode data source example with test
qualify
internal
1 file
zipcode.py
- Created function examples for random complex objects and zipcode verification
instantiate
internal
2 files
random_complex_object.pyverify_zipcode.py
- Added BDD test scenarios and step definitions for AttributePath
qualify
behavioral
2 files
tftypes_attribute_path.featuretftypes_attribute_path_steps.py
Scripts, tooling, and Docker observability infrastructure
6 files changed
extract_go_defs.pyParses Go source to understand Terraform internalsfetch_certs.pyTLS certificate managementgrpc_client_test.pygRPC client testing utilitymarkdown_to_gherkin.pyBDD test generation from markdownDockerfileProvider container build definitionuptraceFull Uptrace observability stack with ClickHouse, Grafana, Prometheus, OTEL collector, and AlertManager
- Added Go source parser, TLS cert management, gRPC test client, and markdown-to-gherkin converter scripts
instantiate
internal
4 files
extract_go_defs.pyfetch_certs.pygrpc_client_test.pymarkdown_to_gherkin.py
- Included full Uptrace observability stack with ClickHouse, Grafana, Prometheus, OTEL collector, and AlertManager
baseline
behavioral
2 files
Dockerfileuptrace