Documentation ¶
Overview ¶
Lingon is a collection of libraries and tools for building platforms using Go.
The following technologies are currently supported:
- Terraform
- Kubernetes
The only dependencies you need are:
- Go
- Terraform CLI
- kubectl
The packages currently available are:
Kube ¶
- kube.App struct that is embedded to mark kubernetes applications
- kube.Export converts kubernetes objects defined as Go struct to kubernetes manifests in YAML.
- kube.Explode kubernetes manifests in YAML to multiple files, organized by namespace.
- kube.Import converts kubernetes manifests in YAML to Go structs.
Kubeconfig ¶
utility package to read and merge kubeconfig files without any dependencies on `go-client`.
Kubeutil ¶
Reusable functions used to create and validate kubernetes objects in Go.
Terra ¶
Core functionality for working with Terraform.
- terra.Export converts a [terra.Stack] to HCL files.
Terragen ¶
Generate Go code for Terraform providers.
- terragen.GenerateProviderSchema generates a terraform provider JSON schema from terraform provider registry.
- terragen.GenerateGoCode converts a terraform provider schema to Go structs.
Testutils ¶
Reusable test functions.
Directories ¶
Path | Synopsis |
---|---|
cmd
|
|
explode
Explode is a command line tool to organize kubernetes manifests according to their kind.
|
Explode is a command line tool to organize kubernetes manifests according to their kind. |
kygo
Kygo is a command line tool to convert kubernetes YAML manifests to Go structs.
|
Kygo is a command line tool to convert kubernetes YAML manifests to Go structs. |
terragen
Terragen generates Go code for Terraform providers.
|
Terragen generates Go code for Terraform providers. |
docs
module
|
|
example
module
|
|
crd
Module
|
|
magefiles
module
|
|
pkg
|
|
internal/terrajen
Package terrajen implements a Go code generator for terraform.
|
Package terrajen implements a Go code generator for terraform. |
kube
Package kube provides APIs to convert Kubernetes manifests YAML from and to Go code.
|
Package kube provides APIs to convert Kubernetes manifests YAML from and to Go code. |
kubeconfig
Package kubeconfig provides a simple way to manipulate kubeconfig files.
|
Package kubeconfig provides a simple way to manipulate kubeconfig files. |
kubeutil
Package kubeutil provides helper functions to create and manipulate kubernetes basic types.
|
Package kubeutil provides helper functions to create and manipulate kubernetes basic types. |
terra
Package terra provides the core functionality for working with Terraform.
|
Package terra provides the core functionality for working with Terraform. |
terragen
Package terragen provides a simple way to generate Go code from a terraform provider.
|
Package terragen provides a simple way to generate Go code from a terraform provider. |
testutil
Package testutils provides utilities for testing.
|
Package testutils provides utilities for testing. |
Click to show internal directories.
Click to hide internal directories.