@@ -25,15 +25,35 @@ import (
25
25
"sigs.k8s.io/controller-runtime/pkg/client"
26
26
)
27
27
28
- // AddProjectNamespace adds an index for core.ProjectNamespace to the given indexer.
29
- func AddProjectNamespace (ctx context.Context , indexer client.FieldIndexer ) error {
30
- if err := indexer .IndexField (ctx , & gardencorev1beta1.Project {}, core .ProjectNamespace , func (obj client.Object ) []string {
28
+ var (
29
+ ProjectNamespaceIndexerFunc = func (obj client.Object ) []string {
31
30
project , ok := obj .(* gardencorev1beta1.Project )
32
31
if ! ok {
33
32
return []string {"" }
34
33
}
35
34
return []string {pointer .StringDeref (project .Spec .Namespace , "" )}
36
- }); err != nil {
35
+ }
36
+
37
+ BackupBucketSeedNameIndexerFunc = func (obj client.Object ) []string {
38
+ backupBucket , ok := obj .(* gardencorev1beta1.BackupBucket )
39
+ if ! ok {
40
+ return []string {"" }
41
+ }
42
+ return []string {pointer .StringDeref (backupBucket .Spec .SeedName , "" )}
43
+ }
44
+
45
+ ControllerInstallationSeedRefNameIndexerFunc = func (obj client.Object ) []string {
46
+ controllerInstallation , ok := obj .(* gardencorev1beta1.ControllerInstallation )
47
+ if ! ok {
48
+ return []string {"" }
49
+ }
50
+ return []string {controllerInstallation .Spec .SeedRef .Name }
51
+ }
52
+ )
53
+
54
+ // AddProjectNamespace adds an index for core.ProjectNamespace to the given indexer.
55
+ func AddProjectNamespace (ctx context.Context , indexer client.FieldIndexer ) error {
56
+ if err := indexer .IndexField (ctx , & gardencorev1beta1.Project {}, core .ProjectNamespace , ProjectNamespaceIndexerFunc ); err != nil {
37
57
return fmt .Errorf ("failed to add indexer for %s to Project Informer: %w" , core .ProjectNamespace , err )
38
58
}
39
59
return nil
@@ -69,13 +89,7 @@ func AddShootStatusSeedName(ctx context.Context, indexer client.FieldIndexer) er
69
89
70
90
// AddBackupBucketSeedName adds an index for core.BackupBucketSeedName to the given indexer.
71
91
func AddBackupBucketSeedName (ctx context.Context , indexer client.FieldIndexer ) error {
72
- if err := indexer .IndexField (ctx , & gardencorev1beta1.BackupBucket {}, core .BackupBucketSeedName , func (obj client.Object ) []string {
73
- backupBucket , ok := obj .(* gardencorev1beta1.BackupBucket )
74
- if ! ok {
75
- return []string {"" }
76
- }
77
- return []string {pointer .StringDeref (backupBucket .Spec .SeedName , "" )}
78
- }); err != nil {
92
+ if err := indexer .IndexField (ctx , & gardencorev1beta1.BackupBucket {}, core .BackupBucketSeedName , BackupBucketSeedNameIndexerFunc ); err != nil {
79
93
return fmt .Errorf ("failed to add indexer for %s to BackupBucket Informer: %w" , core .BackupBucketSeedName , err )
80
94
}
81
95
return nil
@@ -111,13 +125,7 @@ func AddBackupEntryBucketName(ctx context.Context, indexer client.FieldIndexer)
111
125
112
126
// AddControllerInstallationSeedRefName adds an index for core.ControllerInstallationSeedRefName to the given indexer.
113
127
func AddControllerInstallationSeedRefName (ctx context.Context , indexer client.FieldIndexer ) error {
114
- if err := indexer .IndexField (ctx , & gardencorev1beta1.ControllerInstallation {}, core .SeedRefName , func (obj client.Object ) []string {
115
- controllerInstallation , ok := obj .(* gardencorev1beta1.ControllerInstallation )
116
- if ! ok {
117
- return []string {"" }
118
- }
119
- return []string {controllerInstallation .Spec .SeedRef .Name }
120
- }); err != nil {
128
+ if err := indexer .IndexField (ctx , & gardencorev1beta1.ControllerInstallation {}, core .SeedRefName , ControllerInstallationSeedRefNameIndexerFunc ); err != nil {
121
129
return fmt .Errorf ("failed to add indexer for %s to ControllerInstallation Informer: %w" , core .SeedRefName , err )
122
130
}
123
131
return nil
0 commit comments