Skip to content

Commit 94dd9ad

Browse files
committed
fileinformer: update interface for 1.26
1 parent 7859f45 commit 94dd9ad

File tree

3 files changed

+23
-8
lines changed

3 files changed

+23
-8
lines changed

fileinformer/file_informer.go

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ type FileSharedIndexInformer struct {
145145
handlers []cache.ResourceEventHandler
146146
}
147147

148-
var _ cache.SharedIndexInformer = &FileSharedIndexInformer{}
148+
var _ cache.SharedIndexInformer = (*FileSharedIndexInformer)(nil)
149149

150150
// NewFileSharedIndexInformer creates a new informer watching the file
151151
// Note that currently all event handlers share the default resync period.
@@ -159,11 +159,13 @@ func NewFileSharedIndexInformer(log logr.Logger, fileName string, watcher *fsnot
159159
}
160160
}
161161

162-
func (f *FileSharedIndexInformer) AddEventHandler(handler cache.ResourceEventHandler) {
163-
f.AddEventHandlerWithResyncPeriod(handler, f.defaultEventHandlerResyncPeriod)
162+
func (f *FileSharedIndexInformer) IsStopped() bool { return !f.started }
163+
164+
func (f *FileSharedIndexInformer) AddEventHandler(handler cache.ResourceEventHandler) (cache.ResourceEventHandlerRegistration, error) {
165+
return f.AddEventHandlerWithResyncPeriod(handler, f.defaultEventHandlerResyncPeriod)
164166
}
165167

166-
func (f *FileSharedIndexInformer) AddEventHandlerWithResyncPeriod(handler cache.ResourceEventHandler, resyncPeriod time.Duration) {
168+
func (f *FileSharedIndexInformer) AddEventHandlerWithResyncPeriod(handler cache.ResourceEventHandler, resyncPeriod time.Duration) (cache.ResourceEventHandlerRegistration, error) {
167169
f.RLock()
168170
if f.started {
169171
panic("cannot add event handlers after informer has started")
@@ -173,6 +175,14 @@ func (f *FileSharedIndexInformer) AddEventHandlerWithResyncPeriod(handler cache.
173175
defer f.Unlock()
174176
f.handlers = append(f.handlers, handler)
175177
// TODO: non-default resync period
178+
179+
return nil, nil
180+
}
181+
182+
// RemoveEventHandler implements cache.SharedInformer
183+
func (*FileSharedIndexInformer) RemoveEventHandler(handle cache.ResourceEventHandlerRegistration) error {
184+
// TODO implement me
185+
panic("unimplemented")
176186
}
177187

178188
func (f *FileSharedIndexInformer) GetStore() cache.Store {

fileinformer/file_informer_test.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,11 @@ func TestFileInformer(t *testing.T) {
3232
eventHandlers2.On("OnAdd", file2.Name()).Return()
3333

3434
inf := informerFactory.ForResource(FileGroupVersion.WithResource(file.Name())).Informer()
35-
inf.AddEventHandler(eventHandlers)
35+
_, err = inf.AddEventHandler(eventHandlers)
36+
require.NoError(t, err)
3637
inf2 := informerFactory.ForResource(FileGroupVersion.WithResource(file2.Name())).Informer()
37-
inf2.AddEventHandler(eventHandlers2)
38+
_, err = inf2.AddEventHandler(eventHandlers2)
39+
require.NoError(t, err)
3840

3941
ctx, cancel := context.WithCancel(context.Background())
4042
informerFactory.Start(ctx.Done())
@@ -76,7 +78,7 @@ func TestFileInformer(t *testing.T) {
7678
eventHandlers.Lock()
7779
defer eventHandlers.Unlock()
7880
return len(eventHandlers.Calls) == 4
79-
}, 500*time.Millisecond, 10*time.Millisecond)
81+
}, 5000*time.Millisecond, 100*time.Millisecond)
8082

8183
cancel()
8284

static/controller.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,14 @@ func NewStaticController[K bootstrap.KubeResourceObject](log logr.Logger, name s
4747

4848
func (c *Controller[K]) Start(ctx context.Context, numThreads int) {
4949
inf := c.fileInformerFactory.ForResource(c.staticClusterResource).Informer()
50-
inf.AddEventHandler(cache.ResourceEventHandlerFuncs{
50+
_, err := inf.AddEventHandler(cache.ResourceEventHandlerFuncs{
5151
AddFunc: func(obj interface{}) { c.handleStaticResource(ctx) },
5252
UpdateFunc: func(_, obj interface{}) { c.handleStaticResource(ctx) },
5353
DeleteFunc: func(obj interface{}) { c.handleStaticResource(ctx) },
5454
})
55+
if err != nil {
56+
panic("failed to add handlers: " + err.Error())
57+
}
5558
c.fileInformerFactory.Start(ctx.Done())
5659
}
5760

0 commit comments

Comments
 (0)