package client
import "github.com/moby/buildkit/client"
Index ¶
- Constants
- Variables
- type CacheOptionsEntry
- type Client
- func New(ctx context.Context, address string, opts ...ClientOpt) (*Client, error)
- func (c *Client) Build(ctx context.Context, opt SolveOpt, product string, buildFunc gateway.BuildFunc, statusChan chan *SolveStatus) (*SolveResponse, error)
- func (c *Client) Close() error
- func (c *Client) Dialer() session.Dialer
- func (c *Client) DiskUsage(ctx context.Context, opts ...DiskUsageOption) ([]*UsageInfo, error)
- func (c *Client) ListWorkers(ctx context.Context, opts ...ListWorkersOption) ([]*WorkerInfo, error)
- func (c *Client) Prune(ctx context.Context, ch chan UsageInfo, opts ...PruneOption) error
- func (c *Client) Solve(ctx context.Context, def *llb.Definition, opt SolveOpt, statusChan chan *SolveStatus) (*SolveResponse, error)
- type ClientOpt
- func WithContextDialer(df func(context.Context, string) (net.Conn, error)) ClientOpt
- func WithCredentials(serverName, ca, cert, key string) ClientOpt
- func WithFailFast() ClientOpt
- func WithTracerDelegate(td TracerDelegate) ClientOpt
- func WithTracerProvider(t trace.TracerProvider) ClientOpt
- type DiskUsageInfo
- type DiskUsageOption
- type ExportEntry
- type Filter
- func WithFilter(f []string) Filter
- func (f Filter) SetDiskUsageOption(di *DiskUsageInfo)
- func (f Filter) SetListWorkersOption(lwi *ListWorkersInfo)
- func (f Filter) SetPruneOption(pi *PruneInfo)
- type ListWorkersInfo
- type ListWorkersOption
- type PruneInfo
- type PruneOption
- type SolveOpt
- type SolveResponse
- type SolveStatus
- type TracerDelegate
- type UsageInfo
- type UsageRecordType
- type Vertex
- type VertexLog
- type VertexStatus
- type WorkerInfo
Constants ¶
const ( ExporterImage = "image" ExporterLocal = "local" ExporterTar = "tar" ExporterOCI = "oci" ExporterDocker = "docker" )
Variables ¶
Types ¶
type CacheOptionsEntry ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func New ¶
New returns a new buildkit client. Address can be empty for the system-default address.
func (*Client) Build ¶
func (c *Client) Build(ctx context.Context, opt SolveOpt, product string, buildFunc gateway.BuildFunc, statusChan chan *SolveStatus) (*SolveResponse, error)
func (*Client) Close ¶
func (*Client) Dialer ¶
func (*Client) DiskUsage ¶
func (*Client) ListWorkers ¶
func (c *Client) ListWorkers(ctx context.Context, opts ...ListWorkersOption) ([]*WorkerInfo, error)
ListWorkers lists all active workers
func (*Client) Prune ¶
func (*Client) Solve ¶
func (c *Client) Solve(ctx context.Context, def *llb.Definition, opt SolveOpt, statusChan chan *SolveStatus) (*SolveResponse, error)
Solve calls Solve on the controller. def must be nil if (and only if) opt.Frontend is set.
type ClientOpt ¶
type ClientOpt interface{}
func WithContextDialer ¶
func WithCredentials ¶
WithCredentials configures the TLS parameters of the client. Arguments: * serverName: specifies the name of the target server * ca: specifies the filepath of the CA certificate to use for verification * cert: specifies the filepath of the client certificate * key: specifies the filepath of the client key
func WithFailFast ¶
func WithFailFast() ClientOpt
func WithTracerDelegate ¶
func WithTracerDelegate(td TracerDelegate) ClientOpt
func WithTracerProvider ¶
func WithTracerProvider(t trace.TracerProvider) ClientOpt
type DiskUsageInfo ¶
type DiskUsageInfo struct { Filter []string }
type DiskUsageOption ¶
type DiskUsageOption interface { SetDiskUsageOption(*DiskUsageInfo) }
type ExportEntry ¶
type ExportEntry struct { Type string Attrs map[string]string Output func(map[string]string) (io.WriteCloser, error) // for ExporterOCI and ExporterDocker OutputDir string // for ExporterLocal }
type Filter ¶
type Filter []string
func WithFilter ¶
func (Filter) SetDiskUsageOption ¶
func (f Filter) SetDiskUsageOption(di *DiskUsageInfo)
func (Filter) SetListWorkersOption ¶
func (f Filter) SetListWorkersOption(lwi *ListWorkersInfo)
func (Filter) SetPruneOption ¶
type ListWorkersInfo ¶
type ListWorkersInfo struct { Filter []string }
ListWorkersInfo is a payload for worker list query
type ListWorkersOption ¶
type ListWorkersOption interface { SetListWorkersOption(*ListWorkersInfo) }
ListWorkersOption is an option for a worker list query
type PruneInfo ¶
type PruneOption ¶
type PruneOption interface { SetPruneOption(*PruneInfo) }
func WithKeepOpt ¶
func WithKeepOpt(duration time.Duration, bytes int64) PruneOption
type SolveOpt ¶
type SolveOpt struct { Exports []ExportEntry LocalDirs map[string]string string Frontend string FrontendAttrs map[string]string FrontendInputs map[string]llb.State CacheExports []CacheOptionsEntry CacheImports []CacheOptionsEntry Session []session.Attachable AllowedEntitlements []entitlements.Entitlement *session.Session // TODO: refactor to better session syncing SessionPreInitialized bool // TODO: refactor to better session syncing }
type SolveResponse ¶
type SolveResponse struct { // ExporterResponse is also used for CacheExporter ExporterResponse map[string]string }
type SolveStatus ¶
type SolveStatus struct { Vertexes []*Vertex Statuses []*VertexStatus Logs []*VertexLog }
type TracerDelegate ¶
type TracerDelegate interface { SetSpanExporter(context.Context, sdktrace.SpanExporter) error }
type UsageInfo ¶
type UsageInfo struct { ID string Mutable bool InUse bool Size int64 CreatedAt time.Time LastUsedAt *time.Time UsageCount int Parent string Description string RecordType UsageRecordType bool }
type UsageRecordType ¶
type UsageRecordType string
const ( UsageRecordTypeInternal UsageRecordType = "internal" UsageRecordTypeFrontend UsageRecordType = "frontend" UsageRecordTypeLocalSource UsageRecordType = "source.local" UsageRecordTypeGitCheckout UsageRecordType = "source.git.checkout" UsageRecordTypeCacheMount UsageRecordType = "exec.cachemount" UsageRecordTypeRegular UsageRecordType = "regular" )
type Vertex ¶
type Vertex struct { Digest digest.Digest Inputs []digest.Digest Name string Started *time.Time Completed *time.Time Cached bool Error string }
type VertexLog ¶
type VertexStatus ¶
type VertexStatus struct { ID string Vertex digest.Digest Name string Total int64 Current int64 Timestamp time.Time Started *time.Time Completed *time.Time }
type WorkerInfo ¶
type WorkerInfo struct { ID string Labels map[string]string Platforms []specs.Platform GCPolicy []PruneInfo }
WorkerInfo contains information about a worker
Source Files ¶
build.go client.go client_unix.go diskusage.go exporters.go filter.go graph.go prune.go solve.go workers.go
Directories ¶
Path | Synopsis |
---|---|
client/buildid | |
client/connhelper | Package connhelper provides helpers for connecting to a remote daemon host with custom logic. |
client/connhelper/dockercontainer | Package dockercontainer provides connhelper for docker-container://<container> |
client/connhelper/kubepod | Package kubepod provides connhelper for kube-pod://<pod> |
client/connhelper/podmancontainer | Package podmancontainer provides connhelper for podman-container://<container> |
client/llb | |
client/llb/imagemetaresolver | |
client/llb/llbbuild | |
client/llb/llbtest | |
client/ociindex |
- Version
- v0.9.0
- Published
- Jul 16, 2021
- Platform
- js/wasm
- Imports
- 50 packages
- Last checked
- 6 minutes ago –
Tools for package owners.