Documentation
¶
Index ¶
- Constants
- Variables
- type BuildkitVersion
- type CDIDevice
- type CacheOptionsEntry
- type Client
- func (c *Client) Build(ctx context.Context, opt SolveOpt, product string, buildFunc gateway.BuildFunc, ...) (*SolveResponse, error)
- func (c *Client) Close() error
- func (c *Client) ContentClient() contentapi.ContentClient
- func (c *Client) ControlClient() controlapi.ControlClient
- func (c *Client) Dialer() session.Dialer
- func (c *Client) DiskUsage(ctx context.Context, opts ...DiskUsageOption) ([]*UsageInfo, error)
- func (c *Client) GatewayClientForBuild(buildid string) gatewayapi.LLBBridgeClient
- func (c *Client) Info(ctx context.Context) (*Info, 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, ...) (*SolveResponse, error)
- func (c *Client) Wait(ctx context.Context) error
- type ClientOpt
- func WithContextDialer(df func(context.Context, string) (net.Conn, error)) ClientOpt
- func WithCredentials(cert, key string) ClientOpt
- func WithGRPCDialOption(opt grpc.DialOption) ClientOpt
- func WithServerConfig(serverName, caCert string) ClientOpt
- func WithServerConfigSystem(serverName string) ClientOpt
- func WithSessionDialer(dialer func(context.Context, string, map[string][]string) (net.Conn, error)) ClientOpt
- func WithTracerDelegate(td TracerDelegate) ClientOpt
- func WithTracerProvider(t trace.TracerProvider) ClientOpt
- type DiskUsageInfo
- type DiskUsageOption
- type ExportEntry
- type Filter
- type Info
- type ListWorkersInfo
- type ListWorkersOption
- type LocalExporterMode
- type PruneInfo
- type PruneOption
- type SolveOpt
- type SolveResponse
- type SolveStatus
- type TracerDelegate
- type UsageInfo
- type UsageRecordType
- type Vertex
- type VertexLog
- type VertexStatus
- type VertexWarning
- type WorkerInfo
Constants ¶
const ( ExporterImage = "image" ExporterLocal = "local" ExporterTar = "tar" ExporterOCI = "oci" ExporterDocker = "docker" )
Variables ¶
var PruneAll = pruneOptionFunc(func(pi *PruneInfo) { pi.All = true })
Functions ¶
This section is empty.
Types ¶
type BuildkitVersion ¶ added in v0.11.0
type CacheOptionsEntry ¶ added in v0.4.0
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func (*Client) Build ¶
func (c *Client) Build(ctx context.Context, opt SolveOpt, product string, buildFunc gateway.BuildFunc, statusChan chan *SolveStatus) (*SolveResponse, error)
func (*Client) ContentClient ¶ added in v0.11.0
func (c *Client) ContentClient() contentapi.ContentClient
func (*Client) ControlClient ¶ added in v0.11.0
func (c *Client) ControlClient() controlapi.ControlClient
func (*Client) GatewayClientForBuild ¶ added in v0.21.0
func (c *Client) GatewayClientForBuild(buildid string) gatewayapi.LLBBridgeClient
func (*Client) ListWorkers ¶
func (c *Client) ListWorkers(ctx context.Context, opts ...ListWorkersOption) ([]*WorkerInfo, error)
ListWorkers lists all active workers
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 {
// contains filtered or unexported methods
}
func WithContextDialer ¶ added in v0.8.0
func WithCredentials ¶
WithCredentials configures the TLS parameters of the client. Arguments: * cert: specifies the filepath of the client certificate * key: specifies the filepath of the client key
func WithGRPCDialOption ¶ added in v0.12.0
func WithGRPCDialOption(opt grpc.DialOption) ClientOpt
func WithServerConfig ¶ added in v0.12.0
WithServerConfig configures the TLS parameters to connect to the server. Arguments: * serverName: specifies the server name to verify the hostname * caCert: specifies the filepath of the CA certificate
func WithServerConfigSystem ¶ added in v0.12.0
WithServerConfigSystem configures the TLS parameters to connect to the server, using the system's certificate pool.
func WithSessionDialer ¶ added in v0.10.0
func WithTracerDelegate ¶ added in v0.9.0
func WithTracerDelegate(td TracerDelegate) ClientOpt
func WithTracerProvider ¶ added in v0.9.0
func WithTracerProvider(t trace.TracerProvider) ClientOpt
type DiskUsageInfo ¶
type DiskUsageOption ¶
type DiskUsageOption interface {
SetDiskUsageOption(*DiskUsageInfo)
}
func WithAgeLimit ¶ added in v0.22.0
func WithAgeLimit(age time.Duration) DiskUsageOption
type ExportEntry ¶ added in v0.4.0
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 Info ¶ added in v0.11.0
type Info struct {
BuildkitVersion BuildkitVersion `json:"buildkitVersion"`
}
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 LocalExporterMode ¶ added in v0.31.0
type LocalExporterMode string
const ( LocalExporterModeCopy LocalExporterMode = "copy" LocalExporterModeDelete LocalExporterMode = "delete" )
func ParseLocalExporterMode ¶ added in v0.31.0
func ParseLocalExporterMode(v string) (LocalExporterMode, error)
type SolveOpt ¶
type SolveOpt struct {
Exports []ExportEntry
CompatibilityVersion int
EnableSessionExporter bool
LocalMounts map[string]fsutil.FS
LocalFilterOpt filesync.FilterOptFunc
OCIStores map[string]content.Store
Frontend string
FrontendAttrs map[string]string
FrontendInputs map[string]llb.State
CacheExports []CacheOptionsEntry
CacheImports []CacheOptionsEntry
Session []session.Attachable
AllowedEntitlements []string
SessionPreInitialized bool // TODO: refactor to better session syncing
Internal bool
SourcePolicy *spb.Policy
SourcePolicyProvider session.Attachable
ProxyNetwork bool
Ref string
}
type SolveResponse ¶
type SolveStatus ¶
type SolveStatus struct {
Vertexes []*Vertex `json:"vertexes,omitempty"`
Statuses []*VertexStatus `json:"statuses,omitempty"`
Logs []*VertexLog `json:"logs,omitempty"`
Warnings []*VertexWarning `json:"warnings,omitempty"`
}
func NewSolveStatus ¶ added in v0.11.0
func NewSolveStatus(resp *controlapi.StatusResponse) *SolveStatus
func (*SolveStatus) Marshal ¶ added in v0.11.0
func (ss *SolveStatus) Marshal() (out []*controlapi.StatusResponse)
Marshal batches status updates by encoded size without modifying SolveStatus. Logs may be split across responses. Individual metadata entries larger than the batch target are emitted intact in their own response.
type TracerDelegate ¶ added in v0.9.0
type TracerDelegate interface {
SetSpanExporter(context.Context, sdktrace.SpanExporter) error
}
type UsageInfo ¶
type UsageInfo struct {
ID string `json:"id"`
Mutable bool `json:"mutable"`
InUse bool `json:"inUse"`
Size int64 `json:"size"`
CreatedAt time.Time `json:"createdAt"`
LastUsedAt *time.Time `json:"lastUsedAt"`
UsageCount int `json:"usageCount"`
Parents []string `json:"parents"`
Description string `json:"description"`
RecordType UsageRecordType `json:"recordType"`
}
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 `json:"digest,omitempty"`
Inputs []digest.Digest `json:"inputs,omitempty"`
Name string `json:"name,omitempty"`
Started *time.Time `json:"started,omitempty"`
Completed *time.Time `json:"completed,omitempty"`
Cached bool `json:"cached,omitempty"`
Error string `json:"error,omitempty"`
ProgressGroup *pb.ProgressGroup `json:"progressGroup,omitempty"`
}
type VertexStatus ¶
type VertexStatus struct {
ID string `json:"id"`
Vertex digest.Digest `json:"vertex,omitempty"`
Name string `json:"name,omitempty"`
Total int64 `json:"total,omitempty"`
Current int64 `json:"current"`
Timestamp time.Time `json:"timestamp"`
Started *time.Time `json:"started,omitempty"`
Completed *time.Time `json:"completed,omitempty"`
}
type VertexWarning ¶ added in v0.10.0
type VertexWarning struct {
Vertex digest.Digest `json:"vertex,omitempty"`
Level int `json:"level,omitempty"`
Short []byte `json:"short,omitempty"`
Detail [][]byte `json:"detail,omitempty"`
URL string `json:"url,omitempty"`
SourceInfo *pb.SourceInfo `json:"sourceInfo,omitempty"`
Range []*pb.Range `json:"range,omitempty"`
}
type WorkerInfo ¶
type WorkerInfo struct {
ID string `json:"id"`
Labels map[string]string `json:"labels"`
Platforms []ocispecs.Platform `json:"platforms"`
GCPolicy []PruneInfo `json:"gcPolicy"`
BuildkitVersion BuildkitVersion `json:"buildkitVersion"`
CDIDevices []CDIDevice `json:"cdiDevices"`
}
WorkerInfo contains information about a worker
Source Files
¶
Directories
¶
| Path | Synopsis |
|---|---|
|
Package connhelper provides helpers for connecting to a remote daemon host with custom logic.
|
Package connhelper provides helpers for connecting to a remote daemon host with custom logic. |
|
dockercontainer
Package dockercontainer provides connhelper for docker-container://<container>
|
Package dockercontainer provides connhelper for docker-container://<container> |
|
kubepod
Package kubepod provides connhelper for kube-pod://<pod>
|
Package kubepod provides connhelper for kube-pod://<pod> |
|
nerdctlcontainer
Package nerdctlcontainer provides connhelper for nerdctl-container://<container>
|
Package nerdctlcontainer provides connhelper for nerdctl-container://<container> |
|
npipe
Package npipe provides connhelper for npipe://<address>
|
Package npipe provides connhelper for npipe://<address> |
|
podmancontainer
Package podmancontainer provides connhelper for podman-container://<container>
|
Package podmancontainer provides connhelper for podman-container://<container> |
|
ssh
Package ssh provides connhelper for ssh://<SSH URL>
|
Package ssh provides connhelper for ssh://<SSH URL> |