@@ -19,15 +19,14 @@ import (
1919 "os"
2020 "path"
2121 "path/filepath"
22- "runtime"
22+ goruntime "runtime"
2323 "testing"
2424 "time"
2525
26- "github.com/go-logr/zapr"
2726 . "github.com/onsi/ginkgo/v2"
2827 . "github.com/onsi/gomega"
2928 "github.com/spf13/afero"
30- "go.uber.org/zap "
29+ "k8s.io/apimachinery/pkg/runtime/schema "
3130 "k8s.io/client-go/discovery/cached/disk"
3231 "k8s.io/client-go/informers"
3332 "k8s.io/client-go/kubernetes"
@@ -40,6 +39,7 @@ import (
4039 "k8s.io/controller-manager/pkg/informerfactory"
4140 "k8s.io/kubernetes/pkg/controller/garbagecollector"
4241 "sigs.k8s.io/controller-runtime/pkg/envtest"
42+ "sigs.k8s.io/controller-runtime/pkg/log/zap"
4343 "sigs.k8s.io/controller-runtime/tools/setup-envtest/env"
4444 "sigs.k8s.io/controller-runtime/tools/setup-envtest/remote"
4545 "sigs.k8s.io/controller-runtime/tools/setup-envtest/store"
@@ -77,6 +77,7 @@ var _ = SynchronizedBeforeSuite(func() []byte {
7777 // this runs only once, no matter how many processes are running tests
7878 testEnv = & envtest.Environment {
7979 ControlPlaneStopTimeout : 3 * time .Minute ,
80+ CRDDirectoryPaths : []string {"testresource-crd.yaml" },
8081 }
8182
8283 ConfigureApiserver ()
@@ -148,18 +149,13 @@ var _ = SynchronizedBeforeSuite(func() []byte {
148149})
149150
150151func ConfigureApiserver () {
151- logCfg := zap .NewDevelopmentConfig ()
152- logCfg .Level = zap .NewAtomicLevelAt (zap .InfoLevel )
153- zapLog , err := logCfg .Build ()
154- Expect (err ).To (Succeed ())
155- log := zapr .NewLogger (zapLog )
152+ log := zap .New (zap .WriteTo (GinkgoWriter ), zap .UseDevMode (true ))
156153
157154 e := & env.Env {
158155 Log : log ,
159- Client : & remote.Client {
160- Log : log ,
161- Bucket : "kubebuilder-tools" ,
162- Server : "storage.googleapis.com" ,
156+ Client : & remote.HTTPClient {
157+ Log : log ,
158+ IndexURL : remote .DefaultIndexURL ,
163159 },
164160 Version : versions.Spec {
165161 Selector : versions.TildeSelector {},
@@ -169,15 +165,16 @@ func ConfigureApiserver() {
169165 ForceDownload : false ,
170166 Platform : versions.PlatformItem {
171167 Platform : versions.Platform {
172- OS : runtime .GOOS ,
173- Arch : runtime .GOARCH ,
168+ OS : goruntime .GOOS ,
169+ Arch : goruntime .GOARCH ,
174170 },
175171 },
176172 FS : afero.Afero {Fs : afero .NewOsFs ()},
177173 Store : store .NewAt ("../testbin" ),
178174 Out : os .Stdout ,
179175 }
180- e .Version , err = versions .FromExpr ("~1.27.0" )
176+ var err error
177+ e .Version , err = versions .FromExpr ("~1.33.0" )
181178 Expect (err ).To (Succeed ())
182179
183180 workflows.Use {
@@ -208,17 +205,17 @@ func StartKubeGC(ctx context.Context, restConfig *rest.Config) {
208205 sharedInformers := informers .NewSharedInformerFactory (kclient , 0 )
209206 metadataInformers := metadatainformer .NewSharedInformerFactory (mclient , 0 )
210207
211- started := make (chan struct {})
212- gcController , err := garbagecollector .NewGarbageCollector (kclient , mclient , mapper , nil , informerfactory .NewInformerFactory (sharedInformers , metadataInformers ), started )
208+ started := make (<- chan struct {})
209+ ignoredResources := make (map [schema.GroupResource ]struct {})
210+ gcController , err := garbagecollector .NewGarbageCollector (ctx , kclient , mclient , mapper , ignoredResources , informerfactory .NewInformerFactory (sharedInformers , metadataInformers ), started )
213211 Expect (err ).To (Succeed ())
214212
215213 sharedInformers .Start (ctx .Done ())
216214 metadataInformers .Start (ctx .Done ())
217215 sharedInformers .WaitForCacheSync (ctx .Done ())
218216 metadataInformers .WaitForCacheSync (ctx .Done ())
219- close (started )
220217
221- go gcController .Run (ctx , 1 )
218+ go gcController .Run (ctx , 1 , 30 * time . Second )
222219 go gcController .Sync (ctx , cachedDiscovery , 30 * time .Second )
223220}
224221
0 commit comments