Skip to content

Commit fd34223

Browse files
authored
Merge pull request #99 from fanzhangio/issue50
Add binary path in testEnvironment for kubebuilder integration test
2 parents 73fb5b2 + 239d771 commit fd34223

File tree

2 files changed

+20
-5
lines changed

2 files changed

+20
-5
lines changed

pkg/test/server.go

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,21 @@ limitations under the License.
1717
package test
1818

1919
import (
20+
"os"
2021
"time"
2122

23+
"github.com/kubernetes-sigs/kubebuilder/pkg/install"
2224
extensionsv1beta1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1"
2325
"k8s.io/client-go/rest"
24-
2526
"sigs.k8s.io/testing_frameworks/integration"
26-
"github.com/kubernetes-sigs/kubebuilder/pkg/install"
27+
)
28+
29+
// Default binary path for test framework
30+
const (
31+
envKubeAPIServerBin = "TEST_ASSET_KUBE_APISERVER"
32+
envEtcdBin = "TEST_ASSET_ETCD"
33+
defaultKubeAPIServerBin = "/usr/local/kubebuilder/bin/kube-apiserver"
34+
defaultEtcdBin = "/usr/local/kubebuilder/bin/etcd"
2735
)
2836

2937
// TestEnvironment creates a Kubernetes test environment that will start / stop the Kubernetes control plane and
@@ -41,14 +49,21 @@ func (te *TestEnvironment) Stop() {
4149

4250
// Start starts a local Kubernetes server and updates te.ApiserverPort with the port it is listening on
4351
func (te *TestEnvironment) Start() (*rest.Config, error) {
52+
te.ControlPlane = integration.ControlPlane{}
53+
if os.Getenv(envKubeAPIServerBin) == "" {
54+
te.ControlPlane.APIServer = &integration.APIServer{Path: defaultKubeAPIServerBin}
55+
}
56+
if os.Getenv(envEtcdBin) == "" {
57+
te.ControlPlane.Etcd = &integration.Etcd{Path: defaultEtcdBin}
58+
}
59+
4460
// Start the control plane - retry if it fails
4561
var err error
4662
for i := 0; i < 5; i++ {
4763
err = te.ControlPlane.Start()
4864
if err == nil {
4965
break
5066
}
51-
te.ControlPlane = integration.ControlPlane{}
5267
}
5368
// Give up trying to start the control plane
5469
if err != nil {

test.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,8 +102,8 @@ function test_generated_controller {
102102
# Verify the controller-manager builds and the tests pass
103103
go build ./cmd/...
104104
go build ./pkg/...
105-
go test ./cmd/...
106-
go test ./pkg/...
105+
go test -v ./cmd/...
106+
go test -v ./pkg/...
107107
}
108108

109109
prepare_staging_dir

0 commit comments

Comments
 (0)