terraform-provider-pyvider¶
The official reference implementation Terraform provider built with the Pyvider framework, demonstrating best practices and serving as a learning resource.
Overview¶
terraform-provider-pyvider is the canonical example provider for the Pyvider framework. It showcases how to build production-ready Terraform providers using pyvider-components and the full Pyvider ecosystem.
Key Features¶
- ๐ Learning Resource: Comprehensive examples of provider development patterns
- ๐งฉ Component Integration: Demonstrates using pyvider-components library
- โ Best Practices: Reference implementation following all Pyvider conventions
- ๐งช Test Coverage: Extensive test suite showing testing approaches
- ๐ฆ FlavorPack Integration: Production binary packaging examples
- ๐ Rich Documentation: Complete guides for provider development
Purpose¶
This provider serves multiple purposes:
- Reference Implementation: Shows how to structure a production provider
- Testing Playground: Used to validate Pyvider framework features
- Documentation Source: Provides real-world examples for guides
- Component Showcase: Demonstrates pyvider-components in action
Installation¶
Using the Provider¶
terraform {
required_providers {
pyvider = {
source = "provide-io/pyvider"
version = "~> 0.1"
}
}
}
provider "pyvider" {
# Provider configuration
}
Development¶
# Clone and setup
git clone https://github.com/provide-io/terraform-provider-pyvider
cd terraform-provider-pyvider
source env.sh
# Run tests
uv run pytest
# Build provider binary
uv run plating plate
Components Included¶
The provider includes examples of:
- Resources: File operations, timed tokens, private state management
- Data Sources: Environment variables, HTTP APIs, configuration readers
- Functions: String manipulation, numeric operations, jq transformations
- Capabilities: Lens transformations, API interactions
Documentation¶
See the Provider Tour and Build Your Own guides for detailed walkthroughs.
Related Packages¶
- pyvider - Core framework
- pyvider-components - Component library
- plating - Documentation and code generation
- flavorpack - Binary packaging system