|
6 | 6 | "io" |
7 | 7 | "net/http" |
8 | 8 | "net/http/httptest" |
| 9 | + "os" |
9 | 10 | "strings" |
10 | 11 | "testing" |
11 | 12 |
|
@@ -334,18 +335,25 @@ func fakeTPP(t testing.TB) (*httptest.Server, *x509.Certificate) { |
334 | 335 | // |
335 | 336 | // export KUBEBUILDER_ATTACH_CONTROL_PLANE_OUTPUT=true |
336 | 337 | func startEnvtest(t testing.TB) (_ *envtest.Environment, _ *rest.Config, kclient ctrlruntime.WithWatch) { |
| 338 | + // If KUBEBUILDER_ASSETS isn't set, show a warning to the user. |
| 339 | + if os.Getenv("KUBEBUILDER_ASSETS") == "" { |
| 340 | + t.Fatalf("KUBEBUILDER_ASSETS isn't set. You can run this test using `make test`.\n" + |
| 341 | + "But if you prefer not to use `make`, run these two commands first:\n" + |
| 342 | + " make _bin/tools/{kube-apiserver,etcd}\n" + |
| 343 | + " export KUBEBUILDER_ASSETS=$PWD/_bin/tools") |
| 344 | + } |
337 | 345 | envtest := &envtest.Environment{ |
338 | 346 | ErrorIfCRDPathMissing: true, |
339 | 347 | CRDDirectoryPaths: []string{"../../deploy/charts/venafi-kubernetes-agent/crd_bases/jetstack.io_venaficonnections.yaml"}, |
340 | 348 | } |
341 | | - restconf, err := envtest.Start() |
342 | | - require.NoError(t, err) |
343 | 349 |
|
| 350 | + restconf, err := envtest.Start() |
344 | 351 | t.Cleanup(func() { |
345 | 352 | t.Log("Waiting for envtest to exit") |
346 | | - err = envtest.Stop() |
347 | | - require.NoError(t, err) |
| 353 | + e := envtest.Stop() |
| 354 | + require.NoError(t, e) |
348 | 355 | }) |
| 356 | + require.NoError(t, err) |
349 | 357 |
|
350 | 358 | sch := runtime.NewScheme() |
351 | 359 | _ = v1alpha1.AddToScheme(sch) |
|
0 commit comments