Directories
ΒΆ
| Path | Synopsis |
|---|---|
|
ast
module
|
|
|
Package autocomplete implements dynamic shell auto-completion logic for earth targets, commands, and options.
|
Package autocomplete implements dynamic shell auto-completion logic for earth targets, commands, and options. |
|
Package buildcontext implements resolution and loading of remote and local Earthfiles, handling Git lookups and file matching.
|
Package buildcontext implements resolution and loading of remote and local Earthfiles, handling Git lookups and file matching. |
|
provider
Package provider is heavily based on fsSyncProvider in github.com/moby/buildkit/session/filesync.
|
Package provider is heavily based on fsSyncProvider in github.com/moby/buildkit/session/filesync. |
|
Package builder orchestrates the top-level resolution and execution of earth targets and commands.
|
Package builder orchestrates the top-level resolution and execution of earth targets and commands. |
|
Package buildkitd manages the lifecycle of the embedded or remote Buildkit daemon used by earth.
|
Package buildkitd manages the lifecycle of the embedded or remote Buildkit daemon used by earth. |
|
Package cleanup manages a collection of deferred functions to ensure proper resource cleanup upon application exit.
|
Package cleanup manages a collection of deferred functions to ensure proper resource cleanup upon application exit. |
|
cmd
|
|
|
debugger
command
Package main provides the standalone earth debugger executable.
|
Package main provides the standalone earth debugger executable. |
|
earth
command
Package main is the primary entry point for the earth CLI executable.
|
Package main is the primary entry point for the earth CLI executable. |
|
earth/app
Package app encapsulates the core earth command-line application logic, handling initialization and execution.
|
Package app encapsulates the core earth command-line application logic, handling initialization and execution. |
|
earth/base
Package base defines the core CLI framework, lifecycle hooks, and initialization routines for earth.
|
Package base defines the core CLI framework, lifecycle hooks, and initialization routines for earth. |
|
earth/bk
Package bk provides initialization and management of the Buildkit skipping mechanisms for the CLI.
|
Package bk provides initialization and management of the Buildkit skipping mechanisms for the CLI. |
|
earth/common
Package common provides shared utilities and functions utilized across multiple earth subcommands.
|
Package common provides shared utilities and functions utilized across multiple earth subcommands. |
|
earth/disable_alpn
Package disable_alpn sets GRPC_ENFORCE_ALPN_ENABLED environment variable to false during initialization.
|
Package disable_alpn sets GRPC_ENFORCE_ALPN_ENABLED environment variable to false during initialization. |
|
earth/flag
Package flag centralizes the definition of global CLI flags used across various earth subcommands.
|
Package flag centralizes the definition of global CLI flags used across various earth subcommands. |
|
earth/helper
Package helper provides CLI helper functions, including shell auto-completion for earth commands.
|
Package helper provides CLI helper functions, including shell auto-completion for earth commands. |
|
earth/subcmd
Package subcmd defines the various earth CLI subcommands (e.g., build, prune, init, debug) and their specific logic.
|
Package subcmd defines the various earth CLI subcommands (e.g., build, prune, init, debug) and their specific logic. |
|
Package config manages earth's global and repository-level configuration, handling YAML parsing and default values.
|
Package config manages earth's global and repository-level configuration, handling YAML parsing and default values. |
|
Package conslogging provides specialized console logging implementations, including colorized output, buffered logging, and progress reporting for earth builds.
|
Package conslogging provides specialized console logging implementations, including colorized output, buffered logging, and progress reporting for earth builds. |
|
debugger
|
|
|
common
Package common defines shared types and serialization protocols used between the earth debugger client and server.
|
Package common defines shared types and serialization protocols used between the earth debugger client and server. |
|
terminal
Package terminal manages interactive terminal connections for debugging active earth builds.
|
Package terminal manages interactive terminal connections for debugging active earth builds. |
|
Package docker2earth implements the translation logic to convert standard Dockerfiles into equivalent Earthfiles.
|
Package docker2earth implements the translation logic to convert standard Dockerfiles into equivalent Earthfiles. |
|
Package dockertar handles the extraction and parsing of Docker image tarballs to retrieve image metadata and IDs.
|
Package dockertar handles the extraction and parsing of Docker image tarballs to retrieve image metadata and IDs. |
|
Package domain defines core earth concepts such as targets, artifacts, commands, and import trackers, including their parsing logic.
|
Package domain defines core earth concepts such as targets, artifacts, commands, and import trackers, including their parsing logic. |
|
Package earthfile2llb converts parsed Earthfile ASTs into Buildkit Low-Level Builder (LLB) graphs for execution.
|
Package earthfile2llb converts parsed Earthfile ASTs into Buildkit Low-Level Builder (LLB) graphs for execution. |
|
cmdopts
Package cmdopts contains option structures for Earthfile commands.
|
Package cmdopts contains option structures for Earthfile commands. |
|
examples
|
|
|
multiplatform-cross-compile
command
Package main provides a Go application demonstrating multi-platform cross-compilation with earth.
|
Package main provides a Go application demonstrating multi-platform cross-compilation with earth. |
|
readme/go1
command
Package main is a simple Go program used in earth's basic README examples.
|
Package main is a simple Go program used in earth's basic README examples. |
|
readme/go2
command
Package main is a simple Go program used in earth's basic README examples.
|
Package main is a simple Go program used in earth's basic README examples. |
|
tutorial/go/part1
command
Package main provides the foundational Go application for the earth tutorial series.
|
Package main provides the foundational Go application for the earth tutorial series. |
|
tutorial/go/part2
command
Package main demonstrates advanced earth tutorial concepts in a Go application.
|
Package main demonstrates advanced earth tutorial concepts in a Go application. |
|
tutorial/go/part5
command
Package main demonstrates advanced earth tutorial concepts in a Go application.
|
Package main demonstrates advanced earth tutorial concepts in a Go application. |
|
go-monorepo/libs/hello
module
|
|
|
Package features manages version-specific feature flags and backward compatibility layers for earth.
|
Package features manages version-specific feature flags and backward compatibility layers for earth. |
|
Package inputgraph implements dependency graph generation and cache-key hashing for earth targets without requiring full evaluation.
|
Package inputgraph implements dependency graph generation and cache-key hashing for earth targets without requiring full evaluation. |
|
internal
|
|
|
circbuf
Package circbuf provides an in-memory circular buffer implementation to bound the size of captured log streams.
|
Package circbuf provides an in-memory circular buffer implementation to bound the size of captured log streams. |
|
earthfile
Package earthfile defines the core Earthfile AST structure and provides parsing entry points.
|
Package earthfile defines the core Earthfile AST structure and provides parsing entry points. |
|
env
Package env provides helpers for reading earth's environment variables, including backwards-compatible support for the deprecated EARTHLY_ prefix.
|
Package env provides helpers for reading earth's environment variables, including backwards-compatible support for the deprecated EARTHLY_ prefix. |
|
files
Package files provides utilities for secure and robust filesystem operations.
|
Package files provides utilities for secure and robust filesystem operations. |
|
synccache
Package synccache implements a concurrent-safe unbounded cache that evaluates and stores the result of a value loader.
|
Package synccache implements a concurrent-safe unbounded cache that evaluates and stores the result of a value loader. |
|
telemetry
Package telemetry implements OpenTelemetry tracing and metrics collection for EarthlBuild's internal operations.
|
Package telemetry implements OpenTelemetry tracing and metrics collection for EarthlBuild's internal operations. |
|
telemetry/semconv
Package semconv defines OpenTelemetry semantic conventions for earth's telemetry data.
|
Package semconv defines OpenTelemetry semantic conventions for earth's telemetry data. |
|
version
Package version holds earth's version strings and build information injected at compile time.
|
Package version holds earth's version strings and build information injected at compile time. |
|
Package logbus provides a pub-sub event bus for routing build logs, telemetry, and progress events to various subscribers.
|
Package logbus provides a pub-sub event bus for routing build logs, telemetry, and progress events to various subscribers. |
|
formatter
Package formatter implements specialized formatting logic for translating logbus events into human-readable console output.
|
Package formatter implements specialized formatting logic for translating logbus events into human-readable console output. |
|
setup
Package setup provides initialization functions for creating and configuring the central logbus instance.
|
Package setup provides initialization functions for creating and configuring the central logbus instance. |
|
solvermon
Package solvermon monitors the progress of buildkit solvers, tracking operations and identifying fatal errors.
|
Package solvermon monitors the progress of buildkit solvers, tracking operations and identifying fatal errors. |
|
writersub
Package writersub implements logbus subscribers that format and write log streams to standard output or files.
|
Package writersub implements logbus subscribers that format and write log streams to standard output or files. |
|
Package regproxy provides a local registry proxy controller to handle authenticated container image pulls within builds.
|
Package regproxy provides a local registry proxy controller to handle authenticated container image pulls within builds. |
|
scripts
|
|
|
unit-test-parser
command
Package main provides a script for parsing and transforming unit test output.
|
Package main provides a script for parsing and transforming unit test output. |
|
Package slog is a structured logging library which is for use by shellrepeater or any other servers, it should not be used by commands that are run directly by users (e.g.
|
Package slog is a structured logging library which is for use by shellrepeater or any other servers, it should not be used by commands that are run directly by users (e.g. |
|
Package states manages the resolution and execution states of Earthfile targets, maintaining caches, tracking imports, and coordinating solvers.
|
Package states manages the resolution and execution states of Earthfile targets, maintaining caches, tracking imports, and coordinating solvers. |
|
dedup
Package dedup provides target and build arg deduplication for earth's build states, ensuring identical targets are not evaluated multiple times.
|
Package dedup provides target and build arg deduplication for earth's build states, ensuring identical targets are not evaluated multiple times. |
|
image
Package image provides data structures and logic for representing and manipulating container images within the build state.
|
Package image provides data structures and logic for representing and manipulating container images within the build state. |
|
util
|
|
|
buildkitskipper
Package buildkitskipper manages the detection and skipping of redundant buildkit executions for previously built local artifacts.
|
Package buildkitskipper manages the detection and skipping of redundant buildkit executions for previously built local artifacts. |
|
buildkitskipper/hasher
Package hasher implements deterministic hashing for build targets and their inputs to support cache keys.
|
Package hasher implements deterministic hashing for build targets and their inputs to support cache keys. |
|
buildkitutil
Package buildkitutil offers utility functions for formatting and interacting with buildkit utilization metrics.
|
Package buildkitutil offers utility functions for formatting and interacting with buildkit utilization metrics. |
|
cliutil
Package cliutil provides generic CLI utilities such as directory discovery, permission checking, and bootstrap verification.
|
Package cliutil provides generic CLI utilities such as directory discovery, permission checking, and bootstrap verification. |
|
containerutil
Package containerutil provides unified interfaces and frontend implementations (Docker, Podman) for interacting with container runtimes.
|
Package containerutil provides unified interfaces and frontend implementations (Docker, Podman) for interacting with container runtimes. |
|
deltautil
Package deltautil handles the application of delta manifests for optimized remote caching and artifact transfer.
|
Package deltautil handles the application of delta manifests for optimized remote caching and artifact transfer. |
|
dockerutil
Package dockerutil provides utilities for loading and parsing Docker image manifests and tarballs.
|
Package dockerutil provides utilities for loading and parsing Docker image manifests and tarballs. |
|
errutil
Package errutil provides functions for parsing and extracting specialized error details, such as Git stderr logs.
|
Package errutil provides functions for parsing and extracting specialized error details, such as Git stderr logs. |
|
execstatssummary
Package execstatssummary provides mechanisms to track and summarize execution statistics across build steps.
|
Package execstatssummary provides mechanisms to track and summarize execution statistics across build steps. |
|
fileutil
Package fileutil contains robust cross-platform utilities for file and directory checks, path expansion,\ and globbing.
|
Package fileutil contains robust cross-platform utilities for file and directory checks, path expansion,\ and globbing. |
|
flagutil
Package flagutil provides utilities for parsing and preprocessing complex CLI flags, including byte sizes and durations.
|
Package flagutil provides utilities for parsing and preprocessing complex CLI flags, including byte sizes and durations. |
|
fsutilprogress
Package fsutilprogress implements progress callbacks and tracking for file system operations.
|
Package fsutilprogress implements progress callbacks and tracking for file system operations. |
|
gatewaycrafter
Package gatewaycrafter coordinates the crafting of buildkit gateway requests, managing artifact exports, image pushes, and local output summaries.
|
Package gatewaycrafter coordinates the crafting of buildkit gateway requests, managing artifact exports, image pushes, and local output summaries. |
|
gitutil
Package gitutil offers utilities for parsing and extracting Git repository metadata, branch names, tags, and clone URLs.
|
Package gitutil offers utilities for parsing and extracting Git repository metadata, branch names, tags, and clone URLs. |
|
gwclientlogger
Package gwclientlogger provides a specialized logger for Buildkit gateway clients.
|
Package gwclientlogger provides a specialized logger for Buildkit gateway clients. |
|
hint
Package hint provides an error wrapping mechanism that allows attaching actionable hints and contextual messages to errors.
|
Package hint provides an error wrapping mechanism that allows attaching actionable hints and contextual messages to errors. |
|
inodeutil
Package inodeutil provides cross-platform functions for retrieving file system inodes on a best-effort basis.
|
Package inodeutil provides cross-platform functions for retrieving file system inodes on a best-effort basis. |
|
llbutil
Package llbutil offers helper functions for manipulating and creating Low-Level Builder (LLB) operations and dependencies.
|
Package llbutil offers helper functions for manipulating and creating Low-Level Builder (LLB) operations and dependencies. |
|
llbutil/authprovider
Package authprovider manages registry and token authentication for buildkit sessions, supporting multiple providers and Podman.
|
Package authprovider manages registry and token authentication for buildkit sessions, supporting multiple providers and Podman. |
|
llbutil/llbfactory
Package llbfactory constructs LLB (Low-Level Builder) graphs for local files and preconstructed states.
|
Package llbfactory constructs LLB (Low-Level Builder) graphs for local files and preconstructed states. |
|
llbutil/pllb
Package pllb is a wrapper around llb, which makes it compatible with concurrent code.
|
Package pllb is a wrapper around llb, which makes it compatible with concurrent code. |
|
llbutil/secretprovider
Package secretprovider implements mechanisms to supply secrets (like AWS credentials) securely to the buildkit solver.
|
Package secretprovider implements mechanisms to supply secrets (like AWS credentials) securely to the buildkit solver. |
|
oidcutil
Package oidcutil offers parsing and formatting utilities for AWS OIDC authentication information.
|
Package oidcutil offers parsing and formatting utilities for AWS OIDC authentication information. |
|
params
Package params implements parameter parsing errors and wrapping mechanisms for target arguments.
|
Package params implements parameter parsing errors and wrapping mechanisms for target arguments. |
|
parseutil
Package parseutil provides functions for parsing string representations into structured Go maps.
|
Package parseutil provides functions for parsing string representations into structured Go maps. |
|
platutil
Package platutil handles platform resolution, parsing, and architecture mapping for multi-platform build targets.
|
Package platutil handles platform resolution, parsing, and architecture mapping for multi-platform build targets. |
|
progressbar
Package progressbar implements console-based progress bars for long-running operations.
|
Package progressbar implements console-based progress bars for long-running operations. |
|
proj
Package proj contains types and functions for managing a project's Earthfile(s).
|
Package proj contains types and functions for managing a project's Earthfile(s). |
|
reflectutil
Package reflectutil provides reflection-based utilities, such as dynamic boolean setting.
|
Package reflectutil provides reflection-based utilities, such as dynamic boolean setting. |
|
saveartifactlocally
Package saveartifactlocally handles the extraction and local saving of build artifacts from earth's buildkit containers.
|
Package saveartifactlocally handles the extraction and local saving of build artifacts from earth's buildkit containers. |
|
shell
Package shell was forked from buildkit/frontend/dockerfile/shell in order to allow shelling-out.
|
Package shell was forked from buildkit/frontend/dockerfile/shell in order to allow shelling-out. |
|
statsstreamparser
Package statsstreamparser parses stream data containing execution statistics and metrics from buildkit containers.
|
Package statsstreamparser parses stream data containing execution statistics and metrics from buildkit containers. |
|
stringutil
Package stringutil provides advanced string manipulation functions, including ANSI scrubbing, credential masking, and random string generation.
|
Package stringutil provides advanced string manipulation functions, including ANSI scrubbing, credential masking, and random string generation. |
|
syncutil
Package syncutil offers synchronization primitives such as context-aware signals.
|
Package syncutil offers synchronization primitives such as context-aware signals. |
|
syncutil/semutil
Package semutil provides weighted semaphore implementations for concurrency limits.
|
Package semutil provides weighted semaphore implementations for concurrency limits. |
|
syncutil/serrgroup
Package serrgroup is an error group that does not crash if work is added after Wait has returned after an error.
|
Package serrgroup is an error group that does not crash if work is added after Wait has returned after an error. |
|
termutil
Package termutil provides utilities for terminal detection and capabilities.
|
Package termutil provides utilities for terminal detection and capabilities. |
|
vertexmeta
Package vertexmeta parses and formats Buildkit vertex metadata prefixes, extracting execution contexts and secrets.
|
Package vertexmeta parses and formats Buildkit vertex metadata prefixes, extracting execution contexts and secrets. |
|
Package variables manages the variable scopes, arguments, and environment variables during the evaluation of an Earthfile.
|
Package variables manages the variable scopes, arguments, and environment variables during the evaluation of an Earthfile. |
|
reserved
Package reserved identifies and manages earth's reserved, built-in variables and constants.
|
Package reserved identifies and manages earth's reserved, built-in variables and constants. |
Click to show internal directories.
Click to hide internal directories.



