build

package
v0.1.25 Latest Latest
Warning

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

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

Documentation

Overview

Package build builds host-placement Egg images locally, on the workload host itself (bring your own host), so the customer's source code and build never leave their machine and nothing is pushed to any registry.

Builds run ASYNCHRONOUSLY: a repo build takes minutes and must not block the reconcile tick. Ensure kicks off a detached build the first time it sees a tag it cannot find locally, then returns incremental progress on every subsequent tick, which the agent ships to the control plane on the status endpoint.

British English throughout. No em dashes. The clone token and env values are redacted from the build log before it leaves the host.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Builder

type Builder struct {
	// contains filtered or unexported fields
}

Builder tracks in-flight local builds, one per image tag.

func New

func New() *Builder

New returns an empty Builder.

func (*Builder) Ensure

func (b *Builder) Ensure(ctx context.Context, d *contract.BuildDirective, envValues []string, cloneToken string) (ready bool, report *contract.BuildReport)

Ensure makes sure the directive's ImageTag exists locally, building it in the background when it does not. It returns whether the image is ready to run and, whilst a build is in progress or has just finished, an incremental BuildReport for the agent to ship on the status endpoint. Idempotent and cheap to call every tick: the fast path is a single image inspect.

envValues are "KEY=VALUE" build-time variables (from the secrets endpoint) and cloneToken is a short-lived git token for a private repo (empty for public). Both are redacted from the returned log.

Jump to

Keyboard shortcuts

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