diff --git a/test/e2e/e2e_test.go b/test/e2e/e2e_test.go index 52a0c5a..94973e3 100644 --- a/test/e2e/e2e_test.go +++ b/test/e2e/e2e_test.go @@ -37,9 +37,14 @@ var _ = Describe("Onepassword Operator e2e", Ordered, func() { kube.CreateSecretFromEnvVar("OP_SERVICE_ACCOUNT_TOKEN", "onepassword-service-account-token") operator.DeployOperator() + operator.WaitingForOperatorPod() }) Context("Use the operator with Connect", func() { + BeforeAll(func() { + operator.WaitingForConnectPod() + }) + runCommonTestCases() }) diff --git a/test/testhelper/operator/operator.go b/test/testhelper/operator/operator.go index cd2e2e6..af5bdae 100644 --- a/test/testhelper/operator/operator.go +++ b/test/testhelper/operator/operator.go @@ -10,7 +10,7 @@ import ( ) func BuildOperatorImage() { - By("building the operator image") + By("building the Operator image") _, err := system.Run("make", "docker-build") ExpectWithOffset(1, err).NotTo(HaveOccurred()) } @@ -20,11 +20,13 @@ func BuildOperatorImage() { // All the resources created using manifests in `config/` dir. // To make the operator use Connect or Service Accounts, patch `config/manager/manager.yaml` func DeployOperator() { - By("deploying the operator") + By("deploying the Operator") _, err := system.Run("make", "deploy") Expect(err).NotTo(HaveOccurred()) +} - By("waiting for the operator pod to be 'Running'") +func WaitingForOperatorPod() { + By("Waiting for the Operator pod to be 'Running'") Eventually(func(g Gomega) { output, err := system.Run("kubectl", "get", "pods", "-l", "name=onepassword-connect-operator", @@ -33,3 +35,14 @@ func DeployOperator() { g.Expect(output).To(ContainSubstring("Running")) }, 30*time.Second, 1*time.Second).Should(Succeed()) } + +func WaitingForConnectPod() { + By("Waiting for the Connect pod to be 'Running'") + Eventually(func(g Gomega) { + output, err := system.Run("kubectl", "get", "pods", + "-l", "app=onepassword-connect", + "-o", "jsonpath={.items[0].status.phase}") + g.Expect(err).NotTo(HaveOccurred()) + g.Expect(output).To(ContainSubstring("Running")) + }, 30*time.Second, 1*time.Second).Should(Succeed()) +}