Documentation
¶
Index ¶
- func AttestationFromPB[T any](a *pb.Attestation) (*result.Attestation[T], error)
- func AttestationToPB[T any](a *result.Attestation[T]) (*pb.Attestation, error)
- type Attestation
- type BuildFunc
- type BuildOpts
- type CacheOptionsEntry
- type Client
- type Container
- type ContainerProcess
- type FileRange
- type Mount
- type NewContainerRequest
- type ReadDirRequest
- type ReadRequest
- type Reference
- type Result
- type SolveRequest
- type StartRequest
- type StatRequest
- type WarnOpts
- type WinSize
- type WorkerInfo
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AttestationFromPB ¶
func AttestationFromPB[T any](a *pb.Attestation) (*result.Attestation[T], error)
func AttestationToPB ¶
func AttestationToPB[T any](a *result.Attestation[T]) (*pb.Attestation, error)
Types ¶
type Attestation ¶
type Attestation = result.Attestation[Reference]
type CacheOptionsEntry ¶
type Client ¶
type Client interface {
sourceresolver.MetaResolver
Solve(ctx context.Context, req SolveRequest) (*Result, error)
ResolveImageConfig(ctx context.Context, ref string, opt sourceresolver.Opt) (string, digest.Digest, []byte, error)
BuildOpts() BuildOpts
Inputs(ctx context.Context) (map[string]llb.State, error)
NewContainer(ctx context.Context, req NewContainerRequest) (Container, error)
Warn(ctx context.Context, dgst digest.Digest, msg string, opts WarnOpts) error
}
type Container ¶
type Container interface {
Start(context.Context, StartRequest) (ContainerProcess, error)
Release(context.Context) error
}
Container is used to start new processes inside a container and release the container resources when done.
type ContainerProcess ¶
type ContainerProcess interface {
Wait() error
Resize(ctx context.Context, size WinSize) error
Signal(ctx context.Context, sig syscall.Signal) error
}
ContainerProcess represents a process within a container.
type Mount ¶
type Mount struct {
Selector string
Dest string
ResultID string
Ref Reference
Readonly bool
MountType pb.MountType
CacheOpt *pb.CacheOpt
SecretOpt *pb.SecretOpt
SSHOpt *pb.SSHOpt
}
Mount allows clients to specify a filesystem mount. A Reference to a previously solved Result is required.
type NewContainerRequest ¶
type NewContainerRequest struct {
Mounts []Mount
Hostname string
NetMode pb.NetMode
ExtraHosts []*pb.HostIP
Platform *pb.Platform
Constraints *pb.WorkerConstraints
}
NewContainerRequest encapsulates the requirements for a client to define a new container, without defining the initial process.
type ReadDirRequest ¶
type ReadRequest ¶
type Reference ¶
type Reference interface {
ToState() (llb.State, error)
Evaluate(ctx context.Context) error
ReadFile(ctx context.Context, req ReadRequest) ([]byte, error)
StatFile(ctx context.Context, req StatRequest) (*fstypes.Stat, error)
ReadDir(ctx context.Context, req ReadDirRequest) ([]*fstypes.Stat, error)
}
type SolveRequest ¶
type SolveRequest struct {
Evaluate bool
Definition *pb.Definition
Frontend string
FrontendOpt map[string]string
FrontendInputs map[string]*pb.Definition
CacheImports []CacheOptionsEntry
SourcePolicies []*spb.Policy
}
SolveRequest is same as frontend.SolveRequest but avoiding dependency
type StartRequest ¶
type StartRequest struct {
Args []string
Env []string
SecretEnv []*pb.SecretEnv
User string
Cwd string
Tty bool
Stdin io.ReadCloser
Stdout, Stderr io.WriteCloser
SecurityMode pb.SecurityMode
RemoveMountStubsRecursive bool
}
StartRequest encapsulates the arguments to define a process within a container.
type StatRequest ¶
type StatRequest struct {
Path string
}
Click to show internal directories.
Click to hide internal directories.