worker/server: delete CheckBuildDependencies()
Replace all uses of `CheckBuildDependencies()` with `JobDependencyChainErrors()` and delete `CheckBuildDependencies()`.
This commit is contained in:
parent
fa37005a32
commit
fc8af28231
2 changed files with 10 additions and 42 deletions
|
|
@ -510,16 +510,14 @@ func (h *apiHandlers) GetComposeStatus(ctx echo.Context, id string) error {
|
|||
|
||||
if jobType == worker.JobTypeOSBuild {
|
||||
var result worker.OSBuildJobResult
|
||||
status, deps, err := h.server.workers.OSBuildJobStatus(jobId, &result)
|
||||
status, _, err := h.server.workers.OSBuildJobStatus(jobId, &result)
|
||||
if err != nil {
|
||||
return HTTPError(ErrorMalformedOSBuildJobResult)
|
||||
}
|
||||
|
||||
if result.JobError != nil && result.JobError.IsDependencyError() {
|
||||
err = h.server.workers.CheckBuildDependencies(deps[0], result.JobError)
|
||||
if err != nil {
|
||||
return HTTPError(ErrorGettingBuildDependencyStatus)
|
||||
}
|
||||
jobError, err := h.server.workers.JobDependencyChainErrors(jobId)
|
||||
if err != nil {
|
||||
return HTTPError(ErrorGettingBuildDependencyStatus)
|
||||
}
|
||||
|
||||
var us *UploadStatus
|
||||
|
|
@ -580,7 +578,7 @@ func (h *apiHandlers) GetComposeStatus(ctx echo.Context, id string) error {
|
|||
Status: composeStatusFromOSBuildJobStatus(status, &result),
|
||||
ImageStatus: ImageStatus{
|
||||
Status: imageStatusFromOSBuildJobStatus(status, &result),
|
||||
Error: composeStatusErrorFromJobError(result.JobError),
|
||||
Error: composeStatusErrorFromJobError(jobError),
|
||||
UploadStatus: us,
|
||||
},
|
||||
})
|
||||
|
|
@ -602,20 +600,18 @@ func (h *apiHandlers) GetComposeStatus(ctx echo.Context, id string) error {
|
|||
var buildJobStatuses []ImageStatus
|
||||
for i := 1; i < len(deps); i++ {
|
||||
var buildJobResult worker.OSBuildKojiJobResult
|
||||
buildJobStatus, buildDeps, err := h.server.workers.OSBuildKojiJobStatus(deps[i], &buildJobResult)
|
||||
buildJobStatus, _, err := h.server.workers.OSBuildKojiJobStatus(deps[i], &buildJobResult)
|
||||
if err != nil {
|
||||
return HTTPError(ErrorMalformedOSBuildJobResult)
|
||||
}
|
||||
if buildJobResult.JobError != nil && buildJobResult.JobError.IsDependencyError() {
|
||||
err = h.server.workers.CheckBuildDependencies(buildDeps[1], buildJobResult.JobError)
|
||||
if err != nil {
|
||||
return HTTPError(ErrorGettingBuildDependencyStatus)
|
||||
}
|
||||
buildJobError, err := h.server.workers.JobDependencyChainErrors(deps[i])
|
||||
if err != nil {
|
||||
return HTTPError(ErrorGettingBuildDependencyStatus)
|
||||
}
|
||||
buildJobResults = append(buildJobResults, buildJobResult)
|
||||
buildJobStatuses = append(buildJobStatuses, ImageStatus{
|
||||
Status: imageStatusFromKojiJobStatus(buildJobStatus, &initResult, &buildJobResult),
|
||||
Error: composeStatusErrorFromJobError(buildJobResult.JobError),
|
||||
Error: composeStatusErrorFromJobError(buildJobError),
|
||||
})
|
||||
}
|
||||
response := ComposeStatus{
|
||||
|
|
|
|||
|
|
@ -146,34 +146,6 @@ func (s *Server) enqueue(jobType string, job interface{}, dependencies []uuid.UU
|
|||
return s.jobs.Enqueue(jobType, job, dependencies, channel)
|
||||
}
|
||||
|
||||
func (s *Server) CheckBuildDependencies(dep uuid.UUID, jobErr *clienterrors.Error) error {
|
||||
var manifestJR ManifestJobByIDResult
|
||||
_, deps, err := s.ManifestJobStatus(dep, &manifestJR)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if manifestJobErr := manifestJR.JobError; manifestJobErr != nil {
|
||||
if !manifestJobErr.IsDependencyError() {
|
||||
jobErr.Details = manifestJobErr
|
||||
return nil
|
||||
}
|
||||
if len(deps) > 1 {
|
||||
return fmt.Errorf("Unexpected number of dependencies received")
|
||||
}
|
||||
|
||||
var depsolveJR DepsolveJobResult
|
||||
_, _, err := s.DepsolveJobStatus(deps[0], &depsolveJR)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
jobErr.Details = depsolveJR.JobError
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// DependencyChainErrors recursively gathers all errors from job's dependencies,
|
||||
// which caused it to fail. If the job didn't fail, `nil` is returned.
|
||||
func (s *Server) JobDependencyChainErrors(id uuid.UUID) (*clienterrors.Error, error) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue