teleform-derive 0.1.0

Teleform-Derive provides procedural macros for the Teleform library, enabling easy implementation of traits for Infrastructure as Code (IaC) in Rust.
Documentation
  • Coverage
  • 33.33%
    1 out of 3 items documented0 out of 2 items with examples
  • Size
  • Source code size: 8.17 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 279.35 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 10s Average build duration of successful builds.
  • all releases: 10s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • schell/teleform
    1 1 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • schell

Teleform

What is Teleform?

Teleform is an Infrastructure-as-Code (IaC) library for Rust, offering a flexible and powerful alternative to tools like Terraform and Pulumi. It allows developers to describe infrastructure changes as a Directed Acyclic Graph (DAG), providing direct interaction with platform APIs without additional abstraction layers.

Why use Teleform?

  • Flexibility: Leverage the full power of Rust to define and manage your infrastructure.
  • Direct API Interaction: No wrappers over platform-specific resources, allowing for precise and domain-specific configurations.
  • Version Control: Infrastructure definitions are Rust code, easily tracked and managed with version control systems.

How does it work?

High-Level Overview

Teleform operates on the concept of local and remote states of resources, using these states to determine necessary actions such as creating, updating, or deleting resources.

Resources

Resources are defined as structs implementing the Resource trait, with methods for create, read, update, and delete. These methods are explicitly unimplemented! for developer convenience, allowing you to define only the methods you need immediately.

Providers

Providers are associated types on the Resource trait, facilitating interaction with the platform's API. For example, AWS uses aws_config::SdkConfig as its provider.

Store

The store manages the synchronization and serialization of your resources to the filesystem. It is the main structure you interact with when defining your infrastructure in a command-line program.

Target audience

Teleform is ideal for developers, especially those in solo or small team environments, seeking a more general and flexible solution to IaC. It is also suitable for those looking to migrate away from Terraform.

WARNING: Alpha Software!

This software is in its early stages and primarily works along a happy path. Use it with caution and contribute if you can!