hashicorp/nomad · error
Nil config passed
Error message
Nil config passed
What it means
TaskTemplateManagerConfig.Validate guard: a nil config struct was passed to NewTaskTemplateManager; flagged as an error before any template work begins - a programming error at the task runner construction site.
Source
Thrown at client/allocrunner/taskrunner/template/template.go:152
// NomadToken is the Nomad token or identity claim for the task
NomadToken string
// TaskID is a unique identifier for this task's template manager, for use
// in downstream platform-specific template runner consumers
TaskID string
Logger hclog.Logger
// RenderFunc allows custom rendering of templated data, and overrides the
// Nomad custom RenderFunc used for sandboxing. This is currently used by
// the secrets block to hold all templated data in memory.
RenderFunc renderer.Renderer
}
// Validate validates the configuration.
func (c *TaskTemplateManagerConfig) Validate() error {
if c == nil {
return fmt.Errorf("Nil config passed")
} else if c.UnblockCh == nil {
return fmt.Errorf("Invalid unblock channel given")
} else if c.Lifecycle == nil {
return fmt.Errorf("Invalid lifecycle hooks given")
} else if c.Events == nil {
return fmt.Errorf("Invalid event hook given")
} else if c.ClientConfig == nil {
return fmt.Errorf("Invalid client config given")
} else if c.TaskDir == "" {
return fmt.Errorf("Invalid task directory given: %q", c.TaskDir)
} else if c.EnvBuilder == nil {
return fmt.Errorf("Invalid task environment given")
} else if c.MaxTemplateEventRate == 0 {
return fmt.Errorf("Invalid max template event rate given")
}
// Once is a runner config, but in Nomad it is set per template, so all
// templates given to a runner should have the same value for Once.View on GitHub (pinned to 482b49bf1a)
Solutions
- Report as a bug; template manager was constructed with no config
- Check the task runner's template hook initialization path
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at client/allocrunner/taskrunner/template/template.go:152 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of hashicorp/nomad@482b49bf1a (2026-09-04).
Data as JSON: /api/errors/61d569c047b69858.
Report an issue: GitHub.