Documentation
¶
Index ¶
- Constants
- Variables
- func DagOp[T dagql.Typed, A any, R dagql.Typed](ctx context.Context, srv *dagql.Server, self dagql.ObjectResult[T], args A, ...) (inst dagql.Result[R], err error)
- func DagOpChangesetWrapper[T dagql.Typed, A DagOpInternalArgsIface](srv *dagql.Server, fn dagql.NodeFuncHandler[T, A, *core.Changeset]) dagql.NodeFuncHandler[T, A, dagql.Result[*core.Changeset]]
- func DagOpContainer[A any](ctx context.Context, srv *dagql.Server, ctr *core.Container, args A, ...) (*core.Container, string, error)
- func DagOpContainerWrapper[A DagOpInternalArgsIface](srv *dagql.Server, ...) dagql.NodeFuncHandler[*core.Container, A, dagql.ObjectResult[*core.Container]]
- func DagOpDirectory[T dagql.Typed, A any](ctx context.Context, srv *dagql.Server, self T, args A, data string, ...) (*core.Directory, string, error)
- func DagOpDirectoryWrapper[T dagql.Typed, A DagOpInternalArgsIface](srv *dagql.Server, ...) dagql.NodeFuncHandler[T, A, dagql.ObjectResult[*core.Directory]]
- func DagOpFile[T dagql.Typed, A any](ctx context.Context, srv *dagql.Server, self T, args A, ...) (*core.File, string, error)
- func DagOpFileWrapper[T dagql.Typed, A DagOpInternalArgsIface](srv *dagql.Server, ...) dagql.NodeFuncHandler[T, A, dagql.ObjectResult[*core.File]]
- func DagOpWrapper[T dagql.Typed, A DagOpInternalArgsIface, R dagql.Typed](srv *dagql.Server, fn dagql.NodeFuncHandler[T, A, R]) dagql.NodeFuncHandler[T, A, dagql.Result[R]]
- func IsRemotePublic(ctx context.Context, remote *gitutil.GitURL) (bool, error)
- func SchemaIntrospectionJSON(ctx context.Context, dag *dagql.Server) (json.RawMessage, error)
- func Syncer[T core.Evaluatable]() dagql.Field[T]
- type AfterVersion
- type BeforeVersion
- type ChangesetMergeConflict
- type ChangesetsMergeConflict
- type ContainerDagOpInternalArgs
- type CoreMod
- func (m *CoreMod) GetSource() *core.ModuleSource
- func (m *CoreMod) Install(ctx context.Context, dag *dagql.Server) error
- func (m *CoreMod) ModTypeFor(ctx context.Context, typeDef *core.TypeDef, checkDirectDeps bool) (core.ModType, bool, error)
- func (m *CoreMod) Name() string
- func (m *CoreMod) TypeDefs(ctx context.Context, dag *dagql.Server) ([]*core.TypeDef, error)
- func (m *CoreMod) View() (call.View, bool)
- type CoreModEnum
- func (enum *CoreModEnum) CollectCoreIDs(ctx context.Context, value dagql.AnyResult, ids map[digest.Digest]*resource.ID) error
- func (enum *CoreModEnum) ConvertFromSDKResult(ctx context.Context, value any) (dagql.AnyResult, error)
- func (enum *CoreModEnum) ConvertToSDKInput(ctx context.Context, value dagql.Typed) (any, error)
- func (enum *CoreModEnum) SourceMod() core.Mod
- func (enum *CoreModEnum) TypeDef() *core.TypeDef
- type CoreModObject
- func (obj *CoreModObject) CollectCoreIDs(ctx context.Context, value dagql.AnyResult, ids map[digest.Digest]*resource.ID) error
- func (obj *CoreModObject) ConvertFromSDKResult(ctx context.Context, value any) (dagql.AnyResult, error)
- func (obj *CoreModObject) ConvertToSDKInput(ctx context.Context, value dagql.Typed) (any, error)
- func (obj *CoreModObject) SourceMod() core.Mod
- func (obj *CoreModObject) TypeDef() *core.TypeDef
- type CoreModScalar
- func (obj *CoreModScalar) CollectCoreIDs(context.Context, dagql.AnyResult, map[digest.Digest]*resource.ID) error
- func (obj *CoreModScalar) ConvertFromSDKResult(ctx context.Context, value any) (dagql.AnyResult, error)
- func (obj *CoreModScalar) ConvertToSDKInput(ctx context.Context, value dagql.Typed) (any, error)
- func (obj *CoreModScalar) SourceMod() core.Mod
- func (obj *CoreModScalar) TypeDef() *core.TypeDef
- type DagOpInternalArgs
- type DagOpInternalArgsIface
- type DagOpOpts
- type DagOpOptsFn
- type ErrSDKClientGeneratorNotImplemented
- type ErrSDKCodegenNotImplemented
- type ErrSDKRuntimeNotImplemented
- type FSDagOpInternalArgs
- type FilterArgs
- type HostDirCacheConfig
- type Label
- type PathFunc
- type PipelineLabel
- type RawDagOpInternalArgs
- type SchemaResolvers
- type UpArgs
- type WithDirectoryArgs
- type WithFileArgs
- type WithFilesArgs
- type WithNewFileArgs
Constants ¶
const (
FSDagOpPathArgName = "dagOpPath"
)
const InstrumentationLibrary = "dagger.io/engine.schema"
const ( // defined in core package to support telemetry code accessing it too IsDagOpArgName = core.IsDagOpArgName )
const (
RawDagOpFilenameArgName = "dagOpFilename"
)
Variables ¶
var ( FailEarlyOnMergeConflict = ChangesetMergeConflictEnum.RegisterView("FAIL_EARLY", AfterVersion("v0.15.0"), `Fail before attempting merge if file-level conflicts are detected`) FailOnMergeConflict = ChangesetMergeConflictEnum.RegisterView("FAIL", AfterVersion("v0.15.0"), `Attempt the merge and fail if git merge fails due to conflicts`) LeaveConflictMarkersOnMergeConflict = ChangesetMergeConflictEnum.Register("LEAVE_CONFLICT_MARKERS", `Let git create conflict markers in files. For modify/delete conflicts, keeps the modified version. Fails on binary conflicts.`) PreferOursOnMergeConflict = ChangesetMergeConflictEnum.Register("PREFER_OURS", `The conflict is resolved by applying the version of the calling changeset`) PreferTheirsOnMergeConflict = ChangesetMergeConflictEnum.Register("PREFER_THEIRS", `The conflict is resolved by applying the version of the other changeset`) )
var ( FailEarlyOnMergeConflicts = ChangesetsMergeConflictEnum.Register("FAIL_EARLY", `Fail before attempting merge if file-level conflicts are detected between any changesets`) FailOnMergeConflicts = ChangesetsMergeConflictEnum.Register("FAIL", `Attempt the octopus merge and fail if git merge fails due to conflicts`) )
var AllVersion = core.AllVersion
var ChangesetMergeConflictEnum = dagql.NewEnum[ChangesetMergeConflict]()
var ChangesetsMergeConflictEnum = dagql.NewEnum[ChangesetsMergeConflict]()
Functions ¶
func DagOp ¶ added in v0.16.3
func DagOp[T dagql.Typed, A any, R dagql.Typed]( ctx context.Context, srv *dagql.Server, self dagql.ObjectResult[T], args A, fn dagql.NodeFuncHandler[T, A, R], ) (inst dagql.Result[R], err error)
DagOp creates a RawDagOp from an arbitrary operation
NOTE: prefer DagOpWrapper where possible, this is for low-level plumbing, where more control over *which* operations should be cached is needed.
func DagOpChangesetWrapper ¶ added in v0.19.11
func DagOpChangesetWrapper[T dagql.Typed, A DagOpInternalArgsIface]( srv *dagql.Server, fn dagql.NodeFuncHandler[T, A, *core.Changeset], ) dagql.NodeFuncHandler[T, A, dagql.Result[*core.Changeset]]
DagOpChangesetWrapper caches a changeset field as a buildkit operation. After JSON deserialization, it resolves the ObjectResult references that couldn't be directly unmarshaled.
func DagOpContainer ¶ added in v0.18.10
func DagOpContainerWrapper ¶ added in v0.18.10
func DagOpContainerWrapper[A DagOpInternalArgsIface]( srv *dagql.Server, fn dagql.NodeFuncHandler[*core.Container, A, dagql.ObjectResult[*core.Container]], opts ...DagOpOptsFn[*core.Container, A], ) dagql.NodeFuncHandler[*core.Container, A, dagql.ObjectResult[*core.Container]]
func DagOpDirectory ¶ added in v0.16.3
func DagOpDirectory[T dagql.Typed, A any]( ctx context.Context, srv *dagql.Server, self T, args A, data string, fn dagql.NodeFuncHandler[T, A, dagql.ObjectResult[*core.Directory]], opts ...DagOpOptsFn[T, A], ) (*core.Directory, string, error)
NOTE: prefer DagOpDirectoryWrapper where possible, this is for low-level plumbing, where more control over *which* operations should be cached is needed.
func DagOpDirectoryWrapper ¶ added in v0.16.3
func DagOpDirectoryWrapper[T dagql.Typed, A DagOpInternalArgsIface]( srv *dagql.Server, fn dagql.NodeFuncHandler[T, A, dagql.ObjectResult[*core.Directory]], opts ...DagOpOptsFn[T, A], ) dagql.NodeFuncHandler[T, A, dagql.ObjectResult[*core.Directory]]
DagOpDirectoryWrapper caches a directory field as a buildkit operation, similar to DagOpFileWrapper.
func DagOpFile ¶ added in v0.16.3
func DagOpFile[T dagql.Typed, A any]( ctx context.Context, srv *dagql.Server, self T, args A, fn dagql.NodeFuncHandler[T, A, dagql.ObjectResult[*core.File]], opts ...DagOpOptsFn[T, A], ) (*core.File, string, error)
DagOpFile creates a FSDagOp from an operation that returns a File
NOTE: prefer DagOpFileWrapper where possible, this is for low-level plumbing, where more control over *which* operations should be cached is needed.
func DagOpFileWrapper ¶ added in v0.16.3
func DagOpFileWrapper[T dagql.Typed, A DagOpInternalArgsIface]( srv *dagql.Server, fn dagql.NodeFuncHandler[T, A, dagql.ObjectResult[*core.File]], opts ...DagOpOptsFn[T, A], ) dagql.NodeFuncHandler[T, A, dagql.ObjectResult[*core.File]]
DagOpFileWrapper caches a file field as a buildkit operation - this is more specialized than DagOpWrapper, since that serializes the value to JSON, so we'd just end up with a cached ID instead of the actual content.
func DagOpWrapper ¶ added in v0.16.3
func DagOpWrapper[T dagql.Typed, A DagOpInternalArgsIface, R dagql.Typed]( srv *dagql.Server, fn dagql.NodeFuncHandler[T, A, R], ) dagql.NodeFuncHandler[T, A, dagql.Result[R]]
DagOpWrapper caches an arbitrary dagql field as a buildkit operation
func IsRemotePublic ¶ added in v0.19.0
func SchemaIntrospectionJSON ¶ added in v0.11.7
Types ¶
type AfterVersion ¶ added in v0.12.0
type AfterVersion = core.AfterVersion
type BeforeVersion ¶ added in v0.12.0
type BeforeVersion = core.BeforeVersion
type ChangesetMergeConflict ¶ added in v0.19.11
type ChangesetMergeConflict string
func (ChangesetMergeConflict) Decoder ¶ added in v0.19.11
func (proto ChangesetMergeConflict) Decoder() dagql.InputDecoder
func (ChangesetMergeConflict) ToLiteral ¶ added in v0.19.11
func (proto ChangesetMergeConflict) ToLiteral() call.Literal
func (ChangesetMergeConflict) Type ¶ added in v0.19.11
func (proto ChangesetMergeConflict) Type() *ast.Type
func (ChangesetMergeConflict) TypeDescription ¶ added in v0.19.11
func (proto ChangesetMergeConflict) TypeDescription() string
type ChangesetsMergeConflict ¶ added in v0.19.11
type ChangesetsMergeConflict string
ChangesetsMergeConflict is the enum for octopus merge conflict strategies (WithChangesets). Only FAIL_EARLY and FAIL are supported (no -X ours/theirs with octopus merge).
func (ChangesetsMergeConflict) Decoder ¶ added in v0.19.11
func (proto ChangesetsMergeConflict) Decoder() dagql.InputDecoder
func (ChangesetsMergeConflict) ToLiteral ¶ added in v0.19.11
func (proto ChangesetsMergeConflict) ToLiteral() call.Literal
func (ChangesetsMergeConflict) Type ¶ added in v0.19.11
func (proto ChangesetsMergeConflict) Type() *ast.Type
func (ChangesetsMergeConflict) TypeDescription ¶ added in v0.19.11
func (proto ChangesetsMergeConflict) TypeDescription() string
type ContainerDagOpInternalArgs ¶ added in v0.18.11
type ContainerDagOpInternalArgs struct {
DagOpInternalArgs
}
type CoreMod ¶ added in v0.9.4
CoreMod is a special implementation of Mod for our core API, which is not *technically* a true module yet but can be treated as one in terms of dependencies. It has no dependencies itself and is currently an implicit dependency of every user module.
func (*CoreMod) GetSource ¶ added in v0.18.3
func (m *CoreMod) GetSource() *core.ModuleSource
GetSource returns an empty module source
func (*CoreMod) ModTypeFor ¶ added in v0.9.4
type CoreModEnum ¶ added in v0.12.0
type CoreModEnum struct {
// contains filtered or unexported fields
}
func (*CoreModEnum) CollectCoreIDs ¶ added in v0.12.1
func (*CoreModEnum) ConvertFromSDKResult ¶ added in v0.12.0
func (*CoreModEnum) ConvertToSDKInput ¶ added in v0.12.0
func (*CoreModEnum) SourceMod ¶ added in v0.12.0
func (enum *CoreModEnum) SourceMod() core.Mod
func (*CoreModEnum) TypeDef ¶ added in v0.12.0
func (enum *CoreModEnum) TypeDef() *core.TypeDef
type CoreModObject ¶ added in v0.9.4
type CoreModObject struct {
// contains filtered or unexported fields
}
CoreModObject represents objects from core (Container, Directory, etc.)
func (*CoreModObject) CollectCoreIDs ¶ added in v0.12.1
func (*CoreModObject) ConvertFromSDKResult ¶ added in v0.9.4
func (*CoreModObject) ConvertToSDKInput ¶ added in v0.9.4
func (*CoreModObject) SourceMod ¶ added in v0.9.4
func (obj *CoreModObject) SourceMod() core.Mod
func (*CoreModObject) TypeDef ¶ added in v0.9.6
func (obj *CoreModObject) TypeDef() *core.TypeDef
type CoreModScalar ¶ added in v0.11.3
type CoreModScalar struct {
// contains filtered or unexported fields
}
CoreModScalar represents scalars from core (Platform, etc)
func (*CoreModScalar) CollectCoreIDs ¶ added in v0.12.1
func (*CoreModScalar) ConvertFromSDKResult ¶ added in v0.11.3
func (*CoreModScalar) ConvertToSDKInput ¶ added in v0.11.3
func (*CoreModScalar) SourceMod ¶ added in v0.11.3
func (obj *CoreModScalar) SourceMod() core.Mod
func (*CoreModScalar) TypeDef ¶ added in v0.11.3
func (obj *CoreModScalar) TypeDef() *core.TypeDef
type DagOpInternalArgs ¶ added in v0.18.11
type DagOpInternalArgs struct {
IsDagOp bool `internal:"true" default:"false" name:"isDagOp"`
}
func (DagOpInternalArgs) InDagOp ¶ added in v0.18.11
func (d DagOpInternalArgs) InDagOp() bool
type DagOpInternalArgsIface ¶ added in v0.18.11
type DagOpInternalArgsIface interface {
InDagOp() bool
}
type DagOpOpts ¶ added in v0.18.13
type DagOpOpts[T dagql.Typed, A any] struct { FSDagOpInternalArgs // contains filtered or unexported fields }
type DagOpOptsFn ¶ added in v0.18.13
func KeepImageRef ¶ added in v0.19.3
func KeepImageRef[T dagql.Typed, A any](keep bool) DagOpOptsFn[T, A]
func WithHashContentDir ¶ added in v0.19.3
func WithHashContentDir[T dagql.Typed, A any]() DagOpOptsFn[T, A]
func WithPathFn ¶ added in v0.18.13
func WithPathFn[T dagql.Typed, A any](pfn PathFunc[T, A]) DagOpOptsFn[T, A]
func WithStaticPath ¶ added in v0.18.13
func WithStaticPath[T dagql.Typed, A any](pathVal string) DagOpOptsFn[T, A]
type ErrSDKClientGeneratorNotImplemented ¶ added in v0.18.10
type ErrSDKClientGeneratorNotImplemented struct {
SDK string
}
func (ErrSDKClientGeneratorNotImplemented) Error ¶ added in v0.18.10
func (err ErrSDKClientGeneratorNotImplemented) Error() string
type ErrSDKCodegenNotImplemented ¶ added in v0.18.10
type ErrSDKCodegenNotImplemented struct {
SDK string
}
func (ErrSDKCodegenNotImplemented) Error ¶ added in v0.18.10
func (err ErrSDKCodegenNotImplemented) Error() string
type ErrSDKRuntimeNotImplemented ¶ added in v0.18.10
type ErrSDKRuntimeNotImplemented struct {
SDK string
}
func (ErrSDKRuntimeNotImplemented) Error ¶ added in v0.18.10
func (err ErrSDKRuntimeNotImplemented) Error() string
type FSDagOpInternalArgs ¶ added in v0.18.11
type FSDagOpInternalArgs struct {
DagOpInternalArgs
DagOpPath string `internal:"true" default:"" name:"dagOpPath"`
}
type FilterArgs ¶ added in v0.17.2
type FilterArgs struct {
core.CopyFilter
DagOpInternalArgs
}
type HostDirCacheConfig ¶ added in v0.18.9
type HostDirCacheConfig struct {
NoCache bool `default:"false"`
}
func (HostDirCacheConfig) CacheType ¶ added in v0.18.9
func (cc HostDirCacheConfig) CacheType() dagql.CacheControlType
type Label ¶ added in v0.3.10
type Label struct {
Name string `field:"true" doc:"The label name."`
Value string `field:"true" doc:"The label value."`
}
func (Label) TypeDescription ¶ added in v0.9.7
type PipelineLabel ¶ added in v0.11.0
type PipelineLabel struct {
Name string `field:"true" doc:"Label name."`
Value string `field:"true" doc:"Label value."`
}
PipelineLabel is deprecated and has no effect.
func (PipelineLabel) TypeDescription ¶ added in v0.11.0
func (PipelineLabel) TypeDescription() string
func (PipelineLabel) TypeName ¶ added in v0.11.0
func (PipelineLabel) TypeName() string
type RawDagOpInternalArgs ¶ added in v0.18.11
type RawDagOpInternalArgs struct {
DagOpInternalArgs
DagOpFilename string `internal:"true" default:"" name:"dagOpFilename"`
}
type SchemaResolvers ¶ added in v0.9.4
type UpArgs ¶ added in v0.15.2
type UpArgs struct {
Ports []dagql.InputObject[core.PortForward] `default:"[]"`
Random bool `default:"false"`
}
type WithDirectoryArgs ¶ added in v0.9.7
type WithDirectoryArgs struct {
Path string
Owner string `default:""`
Source core.DirectoryID
Directory core.DirectoryID // legacy, use Source instead
core.CopyFilter
DagOpInternalArgs
}
type WithFileArgs ¶ added in v0.9.7
type WithFilesArgs ¶ added in v0.9.10
type WithNewFileArgs ¶ added in v0.18.13
type WithNewFileArgs struct {
Path string
Contents string
Permissions int `default:"0644"`
FSDagOpInternalArgs
}