From 2b011455d0eb37263dd42229d63d2113810a8919 Mon Sep 17 00:00:00 2001 From: Smriti Dahal <93288516+smritidahal653@users.noreply.github.com> Date: Fri, 2 Aug 2024 14:49:04 -0700 Subject: [PATCH] test: adding test for init validation (#629) --- cmd/init-container/main.go | 10 ++++++++++ e2e/initvalidation_test.go | 27 +++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 e2e/initvalidation_test.go diff --git a/cmd/init-container/main.go b/cmd/init-container/main.go index 7d417c12..ae479628 100644 --- a/cmd/init-container/main.go +++ b/cmd/init-container/main.go @@ -24,11 +24,21 @@ import ( "k8s.io/client-go/util/retry" ) +var ( + logLevel = "info" +) + func main() { ctx, cancel := signal.NotifyContext(context.Background(), os.Interrupt) defer cancel() logger := logrus.StandardLogger() + lvl, err := logrus.ParseLevel(logLevel) + if err != nil { + logrus.WithError(err).Fatal("Error parsing log level") + } + logger.SetLevel(lvl) + log.L = logruslogger.FromLogrus(logrus.NewEntry(logger)) log.G(ctx).Debug("Init container started") diff --git a/e2e/initvalidation_test.go b/e2e/initvalidation_test.go new file mode 100644 index 00000000..5438aed6 --- /dev/null +++ b/e2e/initvalidation_test.go @@ -0,0 +1,27 @@ +package e2e + +import ( + "strings" + "testing" +) + +func TestInitVaidationContainer(t *testing.T) { + cmd := kubectl("get", "pod", "-l", "app=aci-connector-linux", "-n", "kube-system", "-o", "jsonpath={.items[1].status.phase}") + + out, err := cmd.CombinedOutput() + if err != nil { + t.Fatal(string(out)) + } + if string(out) != "Running" { + t.Fatal("pod is not in running state") + } + + cmd = kubectl("logs", "-l", "app=aci-connector-linux", "-c", "init-validation", "-n", "kube-system", "--tail=1") + logOut, logErr := cmd.CombinedOutput() + if logErr != nil { + t.Fatal(string(out)) + } + if !strings.Contains(string(logOut), "initial setup for virtual kubelet Azure ACI is successful") { + t.Fatalf("init container setup is not successful. log: %s", string(logOut)) + } +}