Skip to content

Commit 8a9879a

Browse files
authored
worker: Not fail if resource has no versions (#84)
1 parent 19eddb5 commit 8a9879a

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed

qid/transport/http/templates/views/layouts/index.tmpl

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,11 @@
164164
<script type="text/template" id="job-builds-content-view">
165165
<div id="c-<%- id %>">
166166
<div class="accordion <%- active ? '':'d-none' %>" id="<%- id %>-build-steps">
167+
<% if (error) { %>
168+
<div class="alert alert-danger" role="alert">
169+
<%- error %>
170+
</div>
171+
<% } %>
167172
<% _.each(get, function(g, i) { %>
168173
<div class="accordion-item">
169174
<h2 class="accordion-header">

worker/service.go

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,12 @@ func (w *Worker) Run(ctx context.Context) error {
108108
w.logger.Log("error", ferr)
109109
goto END
110110
}
111+
if len(vers) == 0 {
112+
ferr := fmt.Errorf("failed Job %q from Pipeline %q no versions for the resource %q", m.PipelineName, m.JobName, r.Canonical)
113+
w.failBuild(ctx, m, b, ferr)
114+
w.logger.Log("error", ferr)
115+
goto END
116+
}
111117
slices.Reverse(vers)
112118
cmd.Env = append(cmd.Environ(), fmt.Sprintf("VERSION_HASH=%s", vers[0].Hash))
113119
}
@@ -162,7 +168,7 @@ func (w *Worker) Run(ctx context.Context) error {
162168
})
163169
err = w.qid.UpdateJobBuild(ctx, m.PipelineName, m.JobName, b.ID, b)
164170
if err != nil {
165-
ferr := fmt.Errorf("failed update Build for Job %q from Pipeline %q: %w", m.PipelineName, m.JobName, err)
171+
ferr := fmt.Errorf("failed update Build for Job %q from Pipeline %q: %w", m.JobName, m.PipelineName, err)
166172
w.failBuild(ctx, m, b, ferr)
167173
w.logger.Log("error", ferr)
168174
continue
@@ -194,7 +200,7 @@ func (w *Worker) Run(ctx context.Context) error {
194200
b.Status = build.Succeeded
195201
err = w.qid.UpdateJobBuild(ctx, m.PipelineName, m.JobName, b.ID, b)
196202
if err != nil {
197-
w.logger.Log("error", fmt.Errorf("failed update Build for Job %q from Pipeline %q: %w", m.PipelineName, m.JobName, err))
203+
w.logger.Log("error", fmt.Errorf("failed update Build for Job %q from Pipeline %q: %w", m.JobName, m.PipelineName, err))
198204
continue
199205
}
200206
} else if m.PipelineName != "" && m.ResourceName != "" {

0 commit comments

Comments
 (0)