Directories
¶
| Path | Synopsis |
|---|---|
|
Package backends holds the fixed set of state backends and encrypters a factory can use.
|
Package backends holds the fixed set of state backends and encrypters a factory can use. |
|
Package codegen generates Go source from a resolved AST.
|
Package codegen generates Go source from a resolved AST. |
|
Package compile turns factory source into a buildable Go module: it parses and validates the stack, resolves its imports, reads each Go library's schema, runs the compile-time checks, generates main.go and one package per UB library, and optionally runs `go build`.
|
Package compile turns factory source into a buildable Go module: it parses and validates the stack, resolves its imports, reads each Go library's schema, runs the compile-time checks, generates main.go and one package per UB library, and optionally runs `go build`. |
|
Package constraint lets a Go library type declare cross-field constraints on its inputs in a type-safe, string-free way.
|
Package constraint lets a Go library type declare cross-field constraints on its inputs in a type-safe, string-free way. |
|
Package defaults lets a Go library type declare schema defaults for its inputs in a type-safe, string-free way.
|
Package defaults lets a Go library type declare schema defaults for its inputs in a type-safe, string-free way. |
|
Package deps models a factory's dependencies.
|
Package deps models a factory's dependencies. |
|
Package docgen renders unobin reference documentation as Markdown for the docs site.
|
Package docgen renders unobin reference documentation as Markdown for the docs site. |
|
encoding
|
|
|
ub
Package ub encodes Go values as unobin language literals, the counterpart to encoding/json for unobin's own syntax.
|
Package ub encodes Go values as unobin language literals, the counterpart to encoding/json for unobin's own syntax. |
|
Package envencrypt holds unobin's built-in encrypters.
|
Package envencrypt holds unobin's built-in encrypters. |
|
Package fs holds filesystem helpers shared across packages.
|
Package fs holds filesystem helpers shared across packages. |
|
Package git wraps the go-git operations the resolver needs: resolving a ref to a commit SHA without fetching, listing a repo's tags, and cloning a repo at a specific ref into a directory.
|
Package git wraps the go-git operations the resolver needs: resolving a ref to a commit SHA without fetching, listing a repo's tags, and cloning a repo at a specific ref into a directory. |
|
Package gogen generates Go library source code from external schema formats (CFN registry schemas, TF provider schemas, DCL YAML).
|
Package gogen generates Go library source code from external schema formats (CFN registry schemas, TF provider schemas, DCL YAML). |
|
tf
Package tf parses Terraform provider schemas (from "terraform providers schema -json") and converts them to gogen.ResourceSchema values for Go code generation.
|
Package tf parses Terraform provider schemas (from "terraform providers schema -json") and converts them to gogen.ResourceSchema values for Go code generation. |
|
Package goschema reads a Go library's source to learn the output schema of each registered resource, data source, and action.
|
Package goschema reads a Go library's source to learn the output schema of each registered resource, data source, and action. |
|
Package graphprint renders a runtime DAG as either a plain indented listing or a Graphviz DOT document.
|
Package graphprint renders a runtime DAG as either a plain indented listing or a Graphviz DOT document. |
|
Package lang holds the unobin source language: PEG grammar, lexer, AST.
|
Package lang holds the unobin source language: PEG grammar, lexer, AST. |
|
Package state holds unobin's local state backend and the built-in encrypters.
|
Package state holds unobin's local state backend and the built-in encrypters. |
|
Package resolve handles import resolution and lock file management.
|
Package resolve handles import resolution and lock file management. |
|
Package runner is the CLI scaffolding every compiled factory binary links into.
|
Package runner is the CLI scaffolding every compiled factory binary links into. |
|
Package runtime is the execution engine linked into every compiled factory binary.
|
Package runtime is the execution engine linked into every compiled factory binary. |
|
sdk
|
|
|
cfg
Package cfg is the typed vocabulary a Go library uses to declare its configuration.
|
Package cfg is the typed vocabulary a Go library uses to declare its configuration. |
|
cfg/validate
Package validate provides standard Validator constructors for cfg configuration fields.
|
Package validate provides standard Validator constructors for cfg configuration fields. |
|
encrypt
Package encrypt defines the contract a state-file encrypter implements.
|
Package encrypt defines the contract a state-file encrypter implements. |
|
state
Package state defines the contract a state backend implements.
|
Package state defines the contract a state backend implements. |
|
Package toolchain pins the external tools `unobin compile` shells out to and fetches them through a shared cache, so builds use the same versions across machines regardless of what is on ${PATH}.
|
Package toolchain pins the external tools `unobin compile` shells out to and fetches them through a shared cache, so builds use the same versions across machines regardless of what is on ${PATH}. |
|
Package typecheck holds unobin's semantic type model and the static type checker that runs after parsing.
|
Package typecheck holds unobin's semantic type model and the static type checker that runs after parsing. |
|
Package ubtest runs file-based tests for .ub source fixtures.
|
Package ubtest runs file-based tests for .ub source fixtures. |
Click to show internal directories.
Click to hide internal directories.