Skip to content

Commit

Permalink
test: fix with a fake
Browse files Browse the repository at this point in the history
  • Loading branch information
alexec committed May 11, 2021
1 parent 239fdfb commit 326da07
Show file tree
Hide file tree
Showing 5 changed files with 31 additions and 23 deletions.
8 changes: 8 additions & 0 deletions api/util/containerkiller/container_killer.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,14 @@ type containerKiller struct {
*rest.Config
}

type fake struct{}

func (f fake) KillContainer(pod corev1.Pod, container string) error {
return nil
}

var Fake Interface = fake{}

func New(k kubernetes.Interface, r *rest.Config) Interface {
return &containerKiller{Interface: k, Config: r}
}
Expand Down
4 changes: 0 additions & 4 deletions controllers/pipeline_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,6 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/rest"
ctrl "sigs.k8s.io/controller-runtime"
"sigs.k8s.io/controller-runtime/pkg/client"

Expand All @@ -44,8 +42,6 @@ type PipelineReconciler struct {
client.Client
Log logr.Logger
Scheme *runtime.Scheme
RESTConfig *rest.Config
Kubernetes kubernetes.Interface
ContainerKiller containerkiller.Interface
Installer bus.Installer
}
Expand Down
4 changes: 0 additions & 4 deletions controllers/step_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,6 @@ import (
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/types"
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/rest"
"k8s.io/client-go/tools/record"
ctrl "sigs.k8s.io/controller-runtime"
"sigs.k8s.io/controller-runtime/pkg/client"
Expand All @@ -45,8 +43,6 @@ type StepReconciler struct {
Log logr.Logger
Scheme *runtime.Scheme
Recorder record.EventRecorder
RESTConfig *rest.Config
Kubernetes kubernetes.Interface
ContainerKiller containerkiller.Interface
}

Expand Down
27 changes: 21 additions & 6 deletions controllers/suite_test.go
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
package controllers

import (
"github.com/argoproj-labs/argo-dataflow/api/util/containerkiller"
"k8s.io/client-go/kubernetes"
"path/filepath"
"testing"

"k8s.io/client-go/tools/record"

. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
"k8s.io/client-go/kubernetes/scheme"
Expand Down Expand Up @@ -50,6 +54,10 @@ var _ = BeforeSuite(func(done Done) {
Expect(err).ToNot(HaveOccurred())
Expect(cfg).ToNot(BeNil())

k, err := kubernetes.NewForConfig(cfg)
Expect(err).ToNot(HaveOccurred())
ck := containerkiller.New(k, cfg)

err = dataflowv1alpha1.AddToScheme(scheme.Scheme)
Expect(err).NotTo(HaveOccurred())
// +kubebuilder:scaffold:scheme
Expand All @@ -64,16 +72,23 @@ var _ = BeforeSuite(func(done Done) {
Expect(err).ToNot(HaveOccurred())

err = (&PipelineReconciler{
Client: k8sClient,
Scheme: k8sManager.GetScheme(),
Log: ctrl.Log.WithName("controllers").WithName("Pipeline"),
Client: k8sClient,
Scheme: k8sManager.GetScheme(),
Log: ctrl.Log.WithName("controllers").WithName("Pipeline"),
RESTConfig: cfg,
Kubernetes: k,
ContainerKiller: ck,
}).SetupWithManager(k8sManager)
Expect(err).ToNot(HaveOccurred())

err = (&StepReconciler{
Client: k8sClient,
Scheme: k8sManager.GetScheme(),
Log: ctrl.Log.WithName("controllers").WithName("Step"),
Client: k8sClient,
Scheme: k8sManager.GetScheme(),
Log: ctrl.Log.WithName("controllers").WithName("Step"),
RESTConfig: cfg,
Kubernetes: k,
ContainerKiller: ck,
Recorder: record.NewFakeRecorder(1),
}).SetupWithManager(k8sManager)
Expect(err).ToNot(HaveOccurred())

Expand Down
11 changes: 2 additions & 9 deletions manager/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@ import (
"github.com/argoproj-labs/argo-dataflow/controllers/bus"

"k8s.io/apimachinery/pkg/runtime"
"k8s.io/client-go/kubernetes"
clientgoscheme "k8s.io/client-go/kubernetes/scheme"
_ "k8s.io/client-go/plugin/pkg/client/auth/gcp"
ctrl "sigs.k8s.io/controller-runtime"
Expand Down Expand Up @@ -71,15 +70,11 @@ func main() {
panic(fmt.Errorf("unable to start manager: %w", err))
}

k := kubernetes.NewForConfigOrDie(restConfig)
ck := containerkiller.New(k, restConfig)
if err = (&controllers.PipelineReconciler{
Client: mgr.GetClient(),
Log: ctrl.Log.WithName("controllers").WithName("Pipeline"),
Scheme: mgr.GetScheme(),
RESTConfig: restConfig,
Kubernetes: k,
ContainerKiller: ck,
ContainerKiller: containerkiller.Fake,
Installer: bus.NewInstaller(),
}).SetupWithManager(mgr); err != nil {
panic(fmt.Errorf("unable to create controller manager: %w", err))
Expand All @@ -90,9 +85,7 @@ func main() {
Log: ctrl.Log.WithName("controllers").WithName("Step"),
Scheme: mgr.GetScheme(),
Recorder: mgr.GetEventRecorderFor("step-reconciler"),
RESTConfig: restConfig,
Kubernetes: k,
ContainerKiller: ck,
ContainerKiller: containerkiller.Fake,
}).SetupWithManager(mgr); err != nil {
panic(fmt.Errorf("unable to create controller manager: %w", err))
}
Expand Down

0 comments on commit 326da07

Please sign in to comment.