kubernetes-operator/test/helm/suite_test.go

76 lines
1.8 KiB
Go

package helm
import (
"flag"
"github.com/jenkinsci/kubernetes-operator/api/v1alpha2"
"github.com/jenkinsci/kubernetes-operator/test/e2e"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/client-go/kubernetes/scheme"
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
ctrl "sigs.k8s.io/controller-runtime"
"sigs.k8s.io/controller-runtime/pkg/envtest"
logf "sigs.k8s.io/controller-runtime/pkg/log"
"sigs.k8s.io/controller-runtime/pkg/log/zap"
// +kubebuilder:scaffold:imports
)
var (
testEnv *envtest.Environment
imageName *string
)
func init() {
imageName = flag.String("image-name", "", "Name of the locally built for testing Jenkins Operator Image.")
}
// func TestHelm(t *testing.T) {
// RegisterFailHandler(Fail)
// RunSpecs(t, "Controller Suite")
// }
var _ = BeforeSuite(func(done Done) {
logf.SetLogger(zap.New(zap.WriteTo(GinkgoWriter), zap.UseDevMode(false)))
By("bootstrapping test environment")
useExistingCluster := true
testEnv = &envtest.Environment{
UseExistingCluster: &useExistingCluster,
}
var err error
// cfg is defined in this file globally.
cfg, err := testEnv.Start()
Expect(err).NotTo(HaveOccurred())
Expect(cfg).NotTo(BeNil())
//TODO @ansh-devs
some := runtime.NewScheme()
err = v1alpha2.AddToScheme(some)
Expect(err).NotTo(HaveOccurred())
// +kubebuilder:scaffold:scheme
// setup manager
k8sManager, err := ctrl.NewManager(cfg, ctrl.Options{
Scheme: scheme.Scheme,
})
Expect(err).NotTo(HaveOccurred())
go func() {
err = k8sManager.Start(ctrl.SetupSignalHandler())
Expect(err).NotTo(HaveOccurred())
}()
e2e.K8sClient = k8sManager.GetClient()
Expect(e2e.K8sClient).NotTo(BeNil())
close(done)
}, 60)
var _ = AfterSuite(func() {
By("tearing down the test environment")
err := testEnv.Stop()
Expect(err).NotTo(HaveOccurred())
})