You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by as...@apache.org on 2019/12/18 12:34:53 UTC
[camel-k] 08/13: chore(build): Recover the build when in-memory
state is inconsistent
This is an automated email from the ASF dual-hosted git repository.
astefanutti pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel-k.git
commit 97db011f65b581c0ae53cde95497267df1622227
Author: Antonin Stefanutti <an...@stefanutti.fr>
AuthorDate: Tue Dec 17 12:23:41 2019 +0100
chore(build): Recover the build when in-memory state is inconsistent
---
pkg/controller/build/monitor_routine.go | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/pkg/controller/build/monitor_routine.go b/pkg/controller/build/monitor_routine.go
index c1fc7da..3c61cf0 100644
--- a/pkg/controller/build/monitor_routine.go
+++ b/pkg/controller/build/monitor_routine.go
@@ -49,10 +49,10 @@ func (action *monitorRoutineAction) CanHandle(build *v1alpha1.Build) bool {
// Handle handles the builds
func (action *monitorRoutineAction) Handle(ctx context.Context, build *v1alpha1.Build) (*v1alpha1.Build, error) {
// Check the build routine
- if _, ok := action.routines.Load(build.Name); !ok {
- // and reschedule the build if it's missing. This can happen when the operator
- // stops abruptly and restarts.
- build.Status.Phase = v1alpha1.BuildPhaseScheduling
+ if _, ok := action.routines.Load(build.Name); !ok && build.Status.Phase != v1alpha1.BuildPhaseFailed {
+ // and recover the build if it's missing. This can happen when the operator
+ // stops abruptly and restarts or the build status update fails.
+ build.Status.Phase = v1alpha1.BuildPhaseFailed
return build, nil
}