From 3f8bd5da6771bbf614d14fd4efca6781b53d7039 Mon Sep 17 00:00:00 2001 From: Gianluca Zuccarelli Date: Fri, 4 Feb 2022 12:29:19 +0000 Subject: [PATCH] worker: check for empty osbuild job output Add an additional check to ensure empty osbuild output is marked as an error. Add an error case for failed parsing of dynamic args. --- cmd/osbuild-worker/jobimpl-osbuild.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cmd/osbuild-worker/jobimpl-osbuild.go b/cmd/osbuild-worker/jobimpl-osbuild.go index 5f0dae4c2..bfaba5078 100644 --- a/cmd/osbuild-worker/jobimpl-osbuild.go +++ b/cmd/osbuild-worker/jobimpl-osbuild.go @@ -57,7 +57,7 @@ func validateResult(result *worker.OSBuildJobResult, jobID string) { } // if the job failed, but the JobError is // nil, we still need to handle this as an error - if !result.OSBuildOutput.Success { + if result.OSBuildOutput == nil || !result.OSBuildOutput.Success { reason := "osbuild job was unsuccessful" logWithId.Errorf("osbuild job failed: %s", reason) result.JobError = clienterrors.WorkerClientError(clienterrors.ErrorBuildJob, reason) @@ -111,6 +111,7 @@ func (impl *OSBuildJobImpl) Run(job worker.Job) error { var manifestJR worker.ManifestJobByIDResult err = job.DynamicArgs(0, &manifestJR) if err != nil { + osbuildJobResult.JobError = clienterrors.WorkerClientError(clienterrors.ErrorParsingDynamicArgs, "Error parsing dynamic args") return err }