 Documentation
      ¶
      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:"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 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:"buildkitVersion"`
}
    WorkerInfo contains information about a worker
       Source Files
      ¶
      Source Files
      ¶
    
  
       Directories
      ¶
      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> |