Documentation
¶
Index ¶
- Variables
- func WriteApprovalEvent(runDir, stepID string, approved bool) error
- type ApproveExecutor
- type CallExecutor
- type ConnectExecutor
- type DatabaseExecutor
- type DockerExecutor
- type EmailExecutor
- type Executor
- type InlineRExecutor
- type MetaEntry
- type PinExecutor
- type QuartoExecutor
- type RPkgExecutor
- type Result
- type RmdExecutor
- type ScriptExecutor
- type ShellExecutor
- type Summary
- type ValidateExecutor
- type ValidationResult
- type VetiverExecutor
Constants ¶
This section is empty.
Variables ¶
var ErrorContextLines = defaultErrorContextLines
ErrorContextLines is the number of stderr lines to include in error details. Set via config; falls back to defaultErrorContextLines.
var GracePeriod = defaultGracePeriod
GracePeriod is the time allowed for a process to exit after signal. Set via config; falls back to defaultGracePeriod.
var ( // OutputMarkerRe matches ::daggle-output name=<key>::<value> markers in step stdout. OutputMarkerRe = regexp.MustCompile(`^::daggle-output name=([a-zA-Z_][a-zA-Z0-9_]*)::(.*)$`) )
Functions ¶
func WriteApprovalEvent ¶
WriteApprovalEvent writes an approval or rejection event to a run's events.jsonl.
Types ¶
type ApproveExecutor ¶
type ApproveExecutor struct{}
ApproveExecutor blocks until a human approves or rejects via CLI.
type CallExecutor ¶
type CallExecutor struct{}
CallExecutor executes another DAG as a sub-DAG by invoking daggle recursively.
type ConnectExecutor ¶
type ConnectExecutor struct{}
ConnectExecutor deploys content to Posit Connect via the rsconnect R package.
type DatabaseExecutor ¶ added in v0.3.0
type DatabaseExecutor struct{}
DatabaseExecutor runs a SQL query via R DBI and writes the result to disk.
func (*DatabaseExecutor) Run ¶ added in v0.3.0
func (e *DatabaseExecutor) Run(ctx context.Context, step dag.Step, logDir string, workdir string, env []string) Result
Run generates R code that connects to the database, runs the query, and writes the result set in the format inferred from the output extension.
type DockerExecutor ¶ added in v0.3.0
type DockerExecutor struct{}
DockerExecutor runs a command inside a Docker container. The command is supervised like any other subprocess — the outer `docker run` process gets the same signal handling, log capture, and timeout behavior as shell steps.
type EmailExecutor ¶ added in v0.3.0
type EmailExecutor struct{}
EmailExecutor sends an email via a named SMTP notification channel. Runs entirely in-process via net/smtp — no R, no subprocess.
type Executor ¶
type Executor interface {
Run(ctx context.Context, step dag.Step, logDir string, workdir string, env []string) Result
}
Executor runs a single DAG step.
type InlineRExecutor ¶
type InlineRExecutor struct{}
InlineRExecutor writes an R expression to a temp file and runs it via Rscript.
type MetaEntry ¶
type MetaEntry struct {
Name string
Type string // "numeric", "text", "table", "image"
Value string
}
MetaEntry holds a metadata entry emitted via ::daggle-meta:: markers.
type PinExecutor ¶
type PinExecutor struct{}
PinExecutor publishes data/models via the pins R package.
type QuartoExecutor ¶
type QuartoExecutor struct{}
QuartoExecutor renders Quarto documents or projects.
type RPkgExecutor ¶
type RPkgExecutor struct {
Action string // "test", "check", "document", "lint", "style", "renv_restore", "coverage", "shinytest", "pkgdown", "install", "targets", "benchmark", "revdepcheck"
}
RPkgExecutor runs R package development actions via Rscript.
type Result ¶
type Result struct {
ExitCode int
Stdout string // path to stdout log file
Stderr string // path to stderr log file
Duration time.Duration
Err error
Outputs map[string]string // parsed ::daggle-output:: values
ErrorDetail string // extracted error message from stderr (R, Quarto, or last lines)
Summaries []Summary // parsed ::daggle-summary:: values
Metadata []MetaEntry // parsed ::daggle-meta:: values
Validations []ValidationResult // parsed ::daggle-validation:: values
// Resource usage captured from syscall.Rusage after cmd.Wait().
// Zero when unavailable (timeout, start failure, unsupported platform).
PeakRSSKB int64 // peak resident set size in KB (normalized across platforms)
UserCPUSec float64 // user CPU time in seconds
SysCPUSec float64 // system CPU time in seconds
}
Result holds the outcome of executing a step.
type RmdExecutor ¶
type RmdExecutor struct{}
RmdExecutor renders R Markdown documents via rmarkdown::render().
type ValidateExecutor ¶
type ValidateExecutor struct{}
ValidateExecutor runs a data validation R script via Rscript. Same execution as ScriptExecutor — kept as a distinct type so DAG validation, status output, and editor autocomplete can distinguish the two step kinds.
type ValidationResult ¶
ValidationResult holds a validation result emitted via ::daggle-validation:: markers.
type VetiverExecutor ¶
type VetiverExecutor struct{}
VetiverExecutor handles MLOps model versioning/deployment via the vetiver R package.