Skip to content

Commit 522ec57

Browse files
committed
add inactive targets
1 parent ff11a2a commit 522ec57

2 files changed

Lines changed: 18 additions & 3 deletions

File tree

xset/api/xset_controller_types.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,12 +57,16 @@ type XOperation interface {
5757
CheckScheduled(object client.Object) bool
5858
CheckReadyTime(object client.Object) (bool, *metav1.Time)
5959
CheckAvailable(object client.Object) bool
60+
CheckInactive(object client.Object) bool
6061
GetXOpsPriority(ctx context.Context, c client.Client, object client.Object) (*OpsPriority, error)
6162
}
6263

6364
type SubResourcePvcAdapter interface {
64-
XSetPvcTemplate(object XSetObject) []corev1.PersistentVolumeClaim
65-
XMountedPvcs(object client.Object)
65+
RetainPvcWhenXSetDeleted(object XSetObject) bool
66+
RetainPvcWhenXSetScaled(object XSetObject) bool
67+
GetXSetPvcTemplate(object XSetObject) []corev1.PersistentVolumeClaim
68+
GetXMountedPvcs(object client.Object) []corev1.Volume
69+
MountXPvcs(object client.Object, pvcs []corev1.Volume)
6670
}
6771

6872
// LifecycleAdapterGetter is used to get lifecycle adapters.

xset/xcontrol/target_control.go

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ func (r *targetControl) GetFilteredTargets(ctx context.Context, selector *metav1
9797
return nil, fmt.Errorf("target list items is invalid")
9898
}
9999

100-
// todo filterOutInactiveTargets
100+
items = filterOutInactiveTargets(r.xsetController, items)
101101
targets, err := r.getTargets(items, selector, owner)
102102
return targets, err
103103
}
@@ -199,3 +199,14 @@ func setUpCache(cache cache.Cache, controller api.XSetController) error {
199199
}
200200
return nil
201201
}
202+
203+
func filterOutInactiveTargets(xsetController api.XSetController, targets []client.Object) []client.Object {
204+
var filteredTarget []client.Object
205+
for i := range targets {
206+
target := targets[i]
207+
if xsetController.CheckInactive(target) {
208+
filteredTarget = append(filteredTarget, target)
209+
}
210+
}
211+
return filteredTarget
212+
}

0 commit comments

Comments
 (0)