Documentation
¶
Index ¶
- Constants
- func GetHostStableID(lg *slog.Logger) string
- func Tracer(ctx context.Context) trace.Tracer
- type AuthProxy
- func (p AuthProxy) Credentials(ctx context.Context, req *auth.CredentialsRequest) (*auth.CredentialsResponse, error)
- func (p AuthProxy) FetchToken(ctx context.Context, req *auth.FetchTokenRequest) (*auth.FetchTokenResponse, error)
- func (p AuthProxy) GetTokenAuthority(ctx context.Context, req *auth.GetTokenAuthorityRequest) (*auth.GetTokenAuthorityResponse, error)
- func (p AuthProxy) Register(server *grpc.Server)
- func (p AuthProxy) VerifyTokenAuthority(ctx context.Context, req *auth.VerifyTokenAuthorityRequest) (*auth.VerifyTokenAuthorityResponse, error)
- type BuildkitSessionServer
- type Client
- func (c *Client) AppendHTTPRequestHeaders(headers http.Header) http.Header
- func (c *Client) Close() (rerr error)
- func (c *Client) Dagger() *dagger.Client
- func (c *Client) DialContext(ctx context.Context, _, _ string) (conn net.Conn, err error)
- func (c *Client) Do(ctx context.Context, query string, opName string, variables map[string]any, ...) (rerr error)
- func (c *Client) ServeHTTP(w http.ResponseWriter, r *http.Request)
- type DirectConn
- type EngineToEngineParams
- type FilesyncSource
- type FilesyncSourceProxy
- type FilesyncTarget
- type FilesyncTargetProxy
- type Filesyncer
- type Params
- type SocketProvider
- type SocketSessionProxy
Constants ¶
const InstrumentationLibrary = "dagger.io/engine.client"
const StableIDFileName = "stable_client_id"
Variables ¶
This section is empty.
Functions ¶
func GetHostStableID ¶ added in v0.12.3
GetHostStableID returns a random ID that's persisted in the caller's XDG state directory. It's currently used to identify clients that are executing on the same host in order to tell buildkit which filesync cache ref to re-use when syncing dirs+files to the engine.
Types ¶
type AuthProxy ¶ added in v0.19.7
type AuthProxy struct {
// contains filtered or unexported fields
}
func NewAuthProxy ¶ added in v0.19.7
func NewAuthProxy(client auth.AuthClient) AuthProxy
func (AuthProxy) Credentials ¶ added in v0.19.7
func (p AuthProxy) Credentials(ctx context.Context, req *auth.CredentialsRequest) (*auth.CredentialsResponse, error)
func (AuthProxy) FetchToken ¶ added in v0.19.7
func (p AuthProxy) FetchToken(ctx context.Context, req *auth.FetchTokenRequest) (*auth.FetchTokenResponse, error)
func (AuthProxy) GetTokenAuthority ¶ added in v0.19.7
func (p AuthProxy) GetTokenAuthority(ctx context.Context, req *auth.GetTokenAuthorityRequest) (*auth.GetTokenAuthorityResponse, error)
func (AuthProxy) VerifyTokenAuthority ¶ added in v0.19.7
func (p AuthProxy) VerifyTokenAuthority(ctx context.Context, req *auth.VerifyTokenAuthorityRequest) (*auth.VerifyTokenAuthorityResponse, error)
type BuildkitSessionServer ¶ added in v0.11.8
type BuildkitSessionServer struct {
*grpc.Server
MethodURLs []string
Conn net.Conn
Attachables []bksession.Attachable
}
func ConnectBuildkitSession ¶ added in v0.11.8
func ConnectBuildkitSession( ctx context.Context, conn net.Conn, headers http.Header, attachables ...bksession.Attachable, ) (*BuildkitSessionServer, error)
func NewBuildkitSessionServer ¶ added in v0.11.8
func NewBuildkitSessionServer(ctx context.Context, conn net.Conn, attachables ...bksession.Attachable) *BuildkitSessionServer
func (*BuildkitSessionServer) Run ¶ added in v0.11.8
func (srv *BuildkitSessionServer) Run(ctx context.Context)
type Client ¶
type Client struct {
Params
// contains filtered or unexported fields
}
func ConnectEngineToEngine ¶ added in v0.19.7
func ConnectEngineToEngine(ctx context.Context, params EngineToEngineParams) (_ *Client, rerr error)
ConnectEngineToEngine connects a Dagger client to another Dagger engine using an existing session connection. Session attachables are proxied back to the original client.
func (*Client) AppendHTTPRequestHeaders ¶ added in v0.11.8
func (*Client) Dagger ¶ added in v0.8.8
A client to the Dagger API hooked up directly with this engine client.
func (*Client) DialContext ¶
type DirectConn ¶ added in v0.8.8
func EngineConn ¶ added in v0.8.8
func EngineConn(engineClient *Client) DirectConn
func (DirectConn) Close ¶ added in v0.8.8
func (f DirectConn) Close() error
func (DirectConn) Host ¶ added in v0.8.8
func (f DirectConn) Host() string
type EngineToEngineParams ¶ added in v0.19.7
type FilesyncSource ¶ added in v0.11.5
type FilesyncSource Filesyncer
func (FilesyncSource) DiffCopy ¶ added in v0.11.5
func (s FilesyncSource) DiffCopy(stream filesync.FileSync_DiffCopyServer) error
func (FilesyncSource) Register ¶ added in v0.11.5
func (s FilesyncSource) Register(server *grpc.Server)
func (FilesyncSource) TarStream ¶ added in v0.11.5
func (s FilesyncSource) TarStream(stream filesync.FileSync_TarStreamServer) error
type FilesyncSourceProxy ¶ added in v0.19.7
type FilesyncSourceProxy struct {
Client filesync.FileSyncClient
}
func (FilesyncSourceProxy) DiffCopy ¶ added in v0.19.7
func (s FilesyncSourceProxy) DiffCopy(stream filesync.FileSync_DiffCopyServer) error
func (FilesyncSourceProxy) Register ¶ added in v0.19.7
func (s FilesyncSourceProxy) Register(server *grpc.Server)
func (FilesyncSourceProxy) TarStream ¶ added in v0.19.7
func (s FilesyncSourceProxy) TarStream(stream filesync.FileSync_TarStreamServer) error
type FilesyncTarget ¶ added in v0.11.5
type FilesyncTarget Filesyncer
func (FilesyncTarget) DiffCopy ¶ added in v0.11.5
func (t FilesyncTarget) DiffCopy(stream filesync.FileSend_DiffCopyServer) (rerr error)
func (FilesyncTarget) Register ¶ added in v0.11.5
func (t FilesyncTarget) Register(server *grpc.Server)
type FilesyncTargetProxy ¶ added in v0.19.7
type FilesyncTargetProxy struct {
Client filesync.FileSendClient
}
func (FilesyncTargetProxy) DiffCopy ¶ added in v0.19.7
func (s FilesyncTargetProxy) DiffCopy(stream filesync.FileSend_DiffCopyServer) error
func (FilesyncTargetProxy) Register ¶ added in v0.19.7
func (s FilesyncTargetProxy) Register(server *grpc.Server)
type Filesyncer ¶ added in v0.11.5
type Filesyncer struct {
// contains filtered or unexported fields
}
func NewFilesyncer ¶ added in v0.11.5
func NewFilesyncer() (Filesyncer, error)
func (Filesyncer) AsSource ¶ added in v0.11.5
func (f Filesyncer) AsSource() FilesyncSource
func (Filesyncer) AsTarget ¶ added in v0.11.5
func (f Filesyncer) AsTarget() FilesyncTarget
type Params ¶
type Params struct {
// The id to connect to the API server with. If blank, will be set to a
// new random value.
ID string
// The id of the session to connect to, or if blank a new one should be started.
SessionID string
Version string
SecretToken string
RunnerHost string // host of dagger engine runner serving buildkit apis
DisableHostRW bool
CloudURLCallback func(context.Context, string, string, bool)
EngineTrace sdktrace.SpanExporter
EngineLogs sdklog.Exporter
EngineMetrics []sdkmetric.Exporter
// Log level (0 = INFO)
LogLevel slog.Level
Interactive bool
InteractiveCommand []string
WithTerminal terminal.WithTerminalFunc
AllowedLLMModules []string
PromptHandler prompt.PromptHandler
Stdin io.Reader
Stdout io.Writer
ImageLoaderBackend imageload.Backend
Module string
Function string
ExecCmd []string
EagerRuntime bool
CloudBasicAuthToken string
EnableCloudScaleOut bool
}
type SocketProvider ¶
type SocketProvider struct {
EnableHostNetworkAccess bool
}
func (SocketProvider) CheckAgent ¶
func (p SocketProvider) CheckAgent(ctx context.Context, req *sshforward.CheckAgentRequest) (*sshforward.CheckAgentResponse, error)
func (SocketProvider) ForwardAgent ¶
func (p SocketProvider) ForwardAgent(stream sshforward.SSH_ForwardAgentServer) error
func (SocketProvider) Register ¶
func (p SocketProvider) Register(server *grpc.Server)
type SocketSessionProxy ¶ added in v0.19.7
type SocketSessionProxy struct {
// contains filtered or unexported fields
}
SocketSessionProxy is a proxy of a the grpc session attachable (as opposed to the above socketProxy which proxies to arbitrary net.Conns). It's used for engine scale-out.
func NewSocketSessionProxy ¶ added in v0.19.7
func NewSocketSessionProxy(client sshforward.SSHClient) *SocketSessionProxy
func (*SocketSessionProxy) CheckAgent ¶ added in v0.19.7
func (p *SocketSessionProxy) CheckAgent(ctx context.Context, req *sshforward.CheckAgentRequest) (*sshforward.CheckAgentResponse, error)
func (*SocketSessionProxy) ForwardAgent ¶ added in v0.19.7
func (p *SocketSessionProxy) ForwardAgent(stream sshforward.SSH_ForwardAgentServer) error
func (*SocketSessionProxy) Register ¶ added in v0.19.7
func (p *SocketSessionProxy) Register(server *grpc.Server)