Documentation ¶
Index ¶
- Constants
- Variables
- type BuildkitVersion
- 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) 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 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 ¶
type CacheOptionsEntry ¶
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 ¶
func (c *Client) ContentClient() contentapi.ContentClient
func (*Client) ControlClient ¶
func (c *Client) ControlClient() controlapi.ControlClient
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 ¶
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 ¶
func WithGRPCDialOption(opt grpc.DialOption) ClientOpt
func WithServerConfig ¶
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 ¶
WithServerConfigSystem configures the TLS parameters to connect to the server, using the system's certificate pool.
func WithSessionDialer ¶
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 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 ¶
type Info struct {
BuildkitVersion BuildkitVersion `json:"devkitVersion"`
}
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 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 // Deprecated: use LocalMounts LocalMounts map[string]fsutil.FS OCIStores map[string]content.Store Frontend string FrontendAttrs map[string]string FrontendInputs map[string]llb.State CacheExports []CacheOptionsEntry CacheImports []CacheOptionsEntry Session []session.Attachable AllowedEntitlements []entitlements.Entitlement SessionPreInitialized bool // TODO: refactor to better session syncing Internal bool SourcePolicy *spb.Policy 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 ¶
func NewSolveStatus(resp *controlapi.StatusResponse) *SolveStatus
func (*SolveStatus) Marshal ¶
func (ss *SolveStatus) Marshal() (out []*controlapi.StatusResponse)
type TracerDelegate ¶
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,omitempty"` Started *time.Time `json:"started,omitempty"` Completed *time.Time `json:"completed,omitempty"` }
type VertexWarning ¶
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:"devkitVersion"` }
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> |
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> |