Skip to content

Commit fabc283

Browse files
committed
fix(vd): fix data volume watcher
Signed-off-by: Dmitry Rakitin <dmitry.rakitin@flant.com>
1 parent 13f07ac commit fabc283

3 files changed

Lines changed: 12 additions & 8 deletions

File tree

images/virtualization-artifact/hack/dlv-controller.Dockerfile

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ ARG TARGETOS
33
ARG TARGETARCH
44

55
WORKDIR /app/images/virtualization-artifact
6-
RUN go install github.com/go-delve/delve/cmd/dlv@latest
76

87
COPY ./images/virtualization-artifact/go.mod /app/images/virtualization-artifact/
98
COPY ./images/virtualization-artifact/go.sum /app/images/virtualization-artifact/
@@ -24,8 +23,7 @@ RUN go build -tags EE -gcflags "all=-N -l" -a -o virtualization-controller ./cmd
2423
FROM busybox:1.36.1-glibc
2524

2625
WORKDIR /app
27-
COPY --from=builder /go/bin/dlv /app/dlv
2826
COPY --from=builder /app/images/virtualization-artifact/virtualization-controller /app/virtualization-controller
2927
USER 65532:65532
3028

31-
ENTRYPOINT ["./dlv", "--listen=:2345", "--headless=true", "--continue", "--log=true", "--log-output=debugger,debuglineerr,gdbwire,lldbout,rpc", "--accept-multiclient", "--api-version=2", "exec", "./virtualization-controller", "--"]
29+
ENTRYPOINT ["./virtualization-controller"]

images/virtualization-artifact/pkg/controller/vd/internal/watcher/datavolume_watcher.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,11 @@ func (w *DataVolumeWatcher) Watch(mgr manager.Manager, ctr controller.Controller
5353
return true
5454
}
5555

56-
if e.ObjectOld.Status.Phase != e.ObjectNew.Status.Phase && e.ObjectNew.Status.Phase == cdiv1.Succeeded {
57-
return true
56+
if e.ObjectOld.Status.Phase != e.ObjectNew.Status.Phase {
57+
switch e.ObjectNew.Status.Phase {
58+
case cdiv1.Succeeded, cdiv1.WaitForFirstConsumer, cdiv1.PendingPopulation:
59+
return true
60+
}
5861
}
5962

6063
if e.ObjectOld.Status.ClaimName != e.ObjectNew.Status.ClaimName {

images/virtualization-artifact/pkg/controller/vi/internal/watcher/datavolume_watcher.go

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,14 +49,16 @@ func (w *DataVolumeWatcher) Watch(mgr manager.Manager, ctr controller.Controller
4949
),
5050
predicate.TypedFuncs[*cdiv1.DataVolume]{
5151
CreateFunc: func(e event.TypedCreateEvent[*cdiv1.DataVolume]) bool { return false },
52-
DeleteFunc: func(e event.TypedDeleteEvent[*cdiv1.DataVolume]) bool { return false },
5352
UpdateFunc: func(e event.TypedUpdateEvent[*cdiv1.DataVolume]) bool {
5453
if e.ObjectOld.Status.Progress != e.ObjectNew.Status.Progress {
5554
return true
5655
}
5756

58-
if e.ObjectOld.Status.Phase != e.ObjectNew.Status.Phase && e.ObjectNew.Status.Phase == cdiv1.Succeeded {
59-
return true
57+
if e.ObjectOld.Status.Phase != e.ObjectNew.Status.Phase {
58+
switch e.ObjectNew.Status.Phase {
59+
case cdiv1.Succeeded, cdiv1.WaitForFirstConsumer, cdiv1.PendingPopulation:
60+
return true
61+
}
6062
}
6163

6264
if e.ObjectOld.Status.ClaimName != e.ObjectNew.Status.ClaimName {
@@ -77,6 +79,7 @@ func (w *DataVolumeWatcher) Watch(mgr manager.Manager, ctr controller.Controller
7779
dvRunning := service.GetDataVolumeCondition(cdiv1.DataVolumeRunning, e.ObjectNew.Status.Conditions)
7880
return dvRunning != nil && dvRunning.Reason == "Error"
7981
},
82+
DeleteFunc: func(e event.TypedDeleteEvent[*cdiv1.DataVolume]) bool { return false },
8083
},
8184
),
8285
); err != nil {

0 commit comments

Comments
 (0)