Skip to content

Commit

Permalink
Move kubetest utils to separate package
Browse files Browse the repository at this point in the history
  • Loading branch information
Q-Lee committed Feb 24, 2018
1 parent d04fb8b commit 5119d4c
Show file tree
Hide file tree
Showing 24 changed files with 1,653 additions and 1,432 deletions.
9 changes: 8 additions & 1 deletion kubetest/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ go_library(
importpath = "k8s.io/test-infra/kubetest",
deps = [
"//boskos/client:go_default_library",
"//kubetest/process:go_default_library",
"//kubetest/util:go_default_library",
"//vendor/github.com/aws/aws-sdk-go/aws:go_default_library",
"//vendor/github.com/aws/aws-sdk-go/aws/session:go_default_library",
"//vendor/github.com/aws/aws-sdk-go/service/ec2:go_default_library",
Expand All @@ -55,7 +57,11 @@ filegroup(

filegroup(
name = "all-srcs",
srcs = [":package-srcs"],
srcs = [
":package-srcs",
"//kubetest/process:all-srcs",
"//kubetest/util:all-srcs",
],
tags = ["automanaged"],
)

Expand All @@ -72,4 +78,5 @@ go_test(
],
embed = [":go_default_library"],
importpath = "k8s.io/test-infra/kubetest",
deps = ["//kubetest/util:go_default_library"],
)
20 changes: 10 additions & 10 deletions kubetest/anywhere.go
Original file line number Diff line number Diff line change
Expand Up @@ -223,7 +223,7 @@ func bazelBuildPath(version string) string {
var readGSFile = readGSFileImpl

func readGSFileImpl(filepath string) (string, error) {
contents, err := output(exec.Command("gsutil", "cat", filepath))
contents, err := control.Output(exec.Command("gsutil", "cat", filepath))
if err != nil {
return "", err
}
Expand Down Expand Up @@ -255,7 +255,7 @@ func (k *kubernetesAnywhere) writeConfig(configTemplate string) error {

func (k *kubernetesAnywhere) Up() error {
cmd := exec.Command("make", "-C", k.path, "WAIT_FOR_KUBECONFIG=y", "deploy")
if err := finishRunning(cmd); err != nil {
if err := control.FinishRunning(cmd); err != nil {
return err
}

Expand All @@ -279,7 +279,7 @@ func (k *kubernetesAnywhere) DumpClusterLogs(localPath, gcsPath string) error {
}

func (k *kubernetesAnywhere) TestSetup() error {
o, err := output(exec.Command("make", "--silent", "-C", k.path, "kubeconfig-path"))
o, err := control.Output(exec.Command("make", "--silent", "-C", k.path, "kubeconfig-path"))
if err != nil {
return fmt.Errorf("Could not get kubeconfig-path: %v", err)
}
Expand All @@ -292,12 +292,12 @@ func (k *kubernetesAnywhere) TestSetup() error {
}

func (k *kubernetesAnywhere) Down() error {
err := finishRunning(exec.Command("make", "-C", k.path, "kubeconfig-path"))
err := control.FinishRunning(exec.Command("make", "-C", k.path, "kubeconfig-path"))
if err != nil {
// This is expected if the cluster doesn't exist.
return nil
}
return finishRunning(exec.Command("make", "-C", k.path, "FORCE_DESTROY=y", "destroy"))
return control.FinishRunning(exec.Command("make", "-C", k.path, "FORCE_DESTROY=y", "destroy"))
}

func (k *kubernetesAnywhere) GetClusterCreated(gcpProject string) (time.Time, error) {
Expand Down Expand Up @@ -362,7 +362,7 @@ func (k *kubernetesAnywhereMultiCluster) Up() error {
cmds = append(cmds, cmd)
}

if err := finishRunningParallel(cmds...); err != nil {
if err := control.FinishRunningParallel(cmds...); err != nil {
return err
}

Expand All @@ -374,7 +374,7 @@ func (k *kubernetesAnywhereMultiCluster) TestSetup() error {
mergedKubeconfigPath := k.path + "/kubeconfig.json"
var kubecfg string
for _, cluster := range k.multiClusters.clusters {
o, err := output(exec.Command("make", "--silent", "-C", k.path, "CONFIG_FILE="+k.configFile[cluster], "kubeconfig-path"))
o, err := control.Output(exec.Command("make", "--silent", "-C", k.path, "CONFIG_FILE="+k.configFile[cluster], "kubeconfig-path"))
if err != nil {
return fmt.Errorf("could not get kubeconfig-path: %v", err)
}
Expand All @@ -391,7 +391,7 @@ func (k *kubernetesAnywhereMultiCluster) TestSetup() error {
return err
}

o, err := output(exec.Command("kubectl", "config", "view", "--flatten=true", "--raw=true"))
o, err := control.Output(exec.Command("kubectl", "config", "view", "--flatten=true", "--raw=true"))
if err != nil {
return fmt.Errorf("could not get kubeconfig-path: %v", err)
}
Expand All @@ -412,7 +412,7 @@ func (k *kubernetesAnywhereMultiCluster) IsUp() error {

for _, cluster := range k.multiClusters.clusters {
kubeContext := k.kubeContextMap[cluster]
o, err := output(exec.Command("kubectl", "--context="+kubeContext, "get", "nodes", "--no-headers"))
o, err := control.Output(exec.Command("kubectl", "--context="+kubeContext, "get", "nodes", "--no-headers"))
if err != nil {
log.Printf("kubectl get nodes failed for cluster %s: %s\n%s", cluster, wrapError(err).Error(), string(o))
return err
Expand Down Expand Up @@ -440,5 +440,5 @@ func (k *kubernetesAnywhereMultiCluster) Down() error {
cmd := exec.Command("make", "-C", k.path, "CONFIG_FILE="+k.configFile[cluster], "FORCE_DESTROY=y", "destroy")
cmds = append(cmds, cmd)
}
return finishRunningParallel(cmds...)
return control.FinishRunningParallel(cmds...)
}
8 changes: 4 additions & 4 deletions kubetest/bash.go
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ func (b *bashDeployer) Up() error {
cmd := exec.Command(script)
cmd.Env = os.Environ()
cmd.Env = append(cmd.Env, fmt.Sprintf("CLUSTER_IP_RANGE=%s", b.clusterIPRange))
return finishRunning(cmd)
return control.FinishRunning(cmd)
}

func (b *bashDeployer) IsUp() error {
Expand All @@ -62,7 +62,7 @@ func (b *bashDeployer) IsUp() error {
} else {
cmd = "./hack/e2e-internal/e2e-status.sh"
}
return finishRunning(exec.Command(cmd))
return control.FinishRunning(exec.Command(cmd))
}

func (b *bashDeployer) DumpClusterLogs(localPath, gcsPath string) error {
Expand All @@ -80,11 +80,11 @@ func (b *bashDeployer) Down() error {
} else {
cmd = "./hack/e2e-internal/e2e-down.sh"
}
return finishRunning(exec.Command(cmd))
return control.FinishRunning(exec.Command(cmd))
}

func (b *bashDeployer) GetClusterCreated(gcpProject string) (time.Time, error) {
res, err := output(exec.Command(
res, err := control.Output(exec.Command(
"gcloud",
"compute",
"instance-groups",
Expand Down
6 changes: 4 additions & 2 deletions kubetest/build.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ package main
import (
"fmt"
"os/exec"

"k8s.io/test-infra/kubetest/util"
)

const (
Expand Down Expand Up @@ -82,7 +84,7 @@ func (b *buildStrategy) Build() error {
// TODO(fejta): FIX ME
// The build-release script needs stdin to ask the user whether
// it's OK to download the docker image.
return finishRunning(exec.Command("make", "-C", k8s("kubernetes"), target))
return control.FinishRunning(exec.Command("make", "-C", util.K8s("kubernetes"), target))
}

type buildFederationStrategy struct {
Expand Down Expand Up @@ -116,5 +118,5 @@ func (b *buildFederationStrategy) Build() error {
return fmt.Errorf("unknown federation build strategy: %v", b)
}

return finishRunning(exec.Command("make", "-C", k8s("federation"), target))
return control.FinishRunning(exec.Command("make", "-C", util.K8s("federation"), target))
}
Loading

0 comments on commit 5119d4c

Please sign in to comment.