tfgen

package
v0.8.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 14, 2026 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

Package tfgen renders deterministic Podplane-managed OpenTofu/Terraform files.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func WriteCluster

func WriteCluster(configPath string, cfg *clusterconfig.ClusterConfig, opts ClusterOptions) error

WriteCluster writes managed Terraform files for a cluster config path.

func WriteFiles

func WriteFiles(dir string, files []File) error

WriteFiles writes generated files, adding the Podplane header to Terraform.

func WriteOIDC

func WriteOIDC(dir string, cfg *oidcconfig.Config) error

WriteOIDC writes managed Terraform files for an OIDC config.

Types

type ClusterOptions added in v0.1.2

type ClusterOptions struct {
	DepsMirrorURL     string
	VMConfigManifests []VMConfigManifest
}

ClusterOptions provides dependency inputs needed to render cluster Terraform.

type File

type File struct {
	Name    string
	Content string
	Type    FileType
}

File is one generated infrastructure file to write.

func GenerateCluster

func GenerateCluster(configPath string, cfg *clusterconfig.ClusterConfig, opts ClusterOptions) ([]File, error)

GenerateCluster renders managed Terraform files for a cluster config path.

func GenerateOIDC

func GenerateOIDC(cfg *oidcconfig.Config) ([]File, error)

GenerateOIDC renders managed Terraform files for an OIDC config.

type FileType added in v0.7.0

type FileType int

FileType identifies the syntax and header behavior of a generated file.

const (
	FileTypeTerraform FileType = iota + 1
	FileTypeJSON
)

type VMConfigManifest added in v0.7.0

type VMConfigManifest struct {
	Kind     string
	Arch     string
	Filename string
	JSON     []byte
}

VMConfigManifest is one pinned vmconfig manifest used by generated Terraform.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL