diff --git a/internal/rosa/state.go b/internal/rosa/state.go index 73a40b6e..ab1868f4 100644 --- a/internal/rosa/state.go +++ b/internal/rosa/state.go @@ -994,6 +994,13 @@ type evalContext struct { t Toolchain } +// HelperError describes a package with nil helper. +type HelperError string + +func (e HelperError) Error() string { + return "package " + strconv.Quote(string(e)) + " has no exec helper" +} + // pf implements [azalea.PF]. func (ctx *evalContext) pf( name azalea.Ident, @@ -1172,6 +1179,10 @@ func (ctx *evalContext) pf( } } + if helper == nil { + panic(HelperError(name)) + } + v = cachedArtifact{&meta, ctx.t.New( meta.Name, meta.Version,