Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .bingo/go.mod
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
module _ // Fake go.mod auto-created by 'bingo' for go -moddir compatibility with non-Go projects. Commit this file, together with other .mod files.
module _ // Fake go.mod auto-created by 'bingo' for go -moddir compatibility with non-Go projects. Commit this file, together with other .mod files.

go 1.25.3
47 changes: 13 additions & 34 deletions test/e2e/operator.go
Original file line number Diff line number Diff line change
Expand Up @@ -435,34 +435,19 @@ var _ = Describe("ARO Operator - MUO Deployment", func() {
managedUpgradeOperatorDeployment = "managed-upgrade-operator"
)

waitForMUODeploymentReady := func(ctx context.Context) {
Eventually(func(g Gomega, ctx context.Context) {
d, err := clients.Kubernetes.AppsV1().Deployments(managedUpgradeOperatorNamespace).Get(ctx, managedUpgradeOperatorDeployment, metav1.GetOptions{})
g.Expect(err).NotTo(HaveOccurred())
g.Expect(ready.DeploymentIsReady(d)).To(BeTrue(), "expected MUO deployment to be ready")
}).WithContext(ctx).WithTimeout(DefaultEventuallyTimeout).Should(Succeed())
}

It("must be restored if deleted", func(ctx context.Context) {
instance, err := clients.AROClusters.AroV1alpha1().Clusters().Get(ctx, "cluster", metav1.GetOptions{})
Expect(err).NotTo(HaveOccurred())

if !instance.Spec.OperatorFlags.GetSimpleBoolean(operator.MuoEnabled) ||
!instance.Spec.OperatorFlags.GetSimpleBoolean(operator.MuoManaged) {
Skip("Managed Upgrade Operator controller is not enabled and managed, skipping test")
}

deleteFunc := clients.Kubernetes.AppsV1().Deployments(managedUpgradeOperatorNamespace).Delete
getFunc := clients.Kubernetes.AppsV1().Deployments(managedUpgradeOperatorNamespace).Get

By("waiting for the MUO deployment to be ready")
waitForMUODeploymentReady(ctx)
GetK8sObjectWithRetry(ctx, getFunc, managedUpgradeOperatorDeployment, metav1.GetOptions{})

By("deleting the MUO deployment")
DeleteK8sObjectWithRetry(ctx, deleteFunc, managedUpgradeOperatorDeployment, metav1.DeleteOptions{})

By("waiting for the MUO deployment to be reconciled and ready")
waitForMUODeploymentReady(ctx)
})
By("waiting for the MUO deployment to be reconciled")
GetK8sObjectWithRetry(ctx, getFunc, managedUpgradeOperatorDeployment, metav1.GetOptions{})
}, SpecTimeout(3*time.Minute))
})

var _ = Describe("ARO Operator - ImageConfig Reconciler", func() {
Expand Down Expand Up @@ -745,14 +730,6 @@ var _ = Describe("ARO Operator - Guardrails", func() {
gkAuditDeployment = "gatekeeper-audit"
)

waitForGatekeeperDeploymentReady := func(ctx context.Context, deploymentName string) {
Eventually(func(g Gomega, ctx context.Context) {
d, err := clients.Kubernetes.AppsV1().Deployments(guardrailsNamespace).Get(ctx, deploymentName, metav1.GetOptions{})
g.Expect(err).NotTo(HaveOccurred())
g.Expect(ready.DeploymentIsReady(d)).To(BeTrue(), "expected %q deployment to be ready", deploymentName)
}).WithContext(ctx).WithTimeout(DefaultEventuallyTimeout).Should(Succeed())
}

It("Controller Manager must be restored if deleted", func(ctx context.Context) {
instance, err := clients.AROClusters.AroV1alpha1().Clusters().Get(ctx, "cluster", metav1.GetOptions{})
Expect(err).NotTo(HaveOccurred())
Expand All @@ -762,16 +739,17 @@ var _ = Describe("ARO Operator - Guardrails", func() {
Skip("Guardrails Controller is not enabled, skipping test")
}

getFunc := clients.Kubernetes.AppsV1().Deployments(guardrailsNamespace).Get
deleteFunc := clients.Kubernetes.AppsV1().Deployments(guardrailsNamespace).Delete

By("waiting for the gatekeeper Controller Manager deployment to be ready")
waitForGatekeeperDeploymentReady(ctx, gkControllerManagerDeployment)
GetK8sObjectWithRetry(ctx, getFunc, gkControllerManagerDeployment, metav1.GetOptions{})

By("deleting the gatekeeper Controller Manager deployment")
DeleteK8sObjectWithRetry(ctx, deleteFunc, gkControllerManagerDeployment, metav1.DeleteOptions{})

By("waiting for the gatekeeper Controller Manager deployment to be reconciled and ready")
waitForGatekeeperDeploymentReady(ctx, gkControllerManagerDeployment)
By("waiting for the gatekeeper Controller Manager deployment to be reconciled")
GetK8sObjectWithRetry(ctx, getFunc, gkControllerManagerDeployment, metav1.GetOptions{})
})

It("Audit must be restored if deleted", func(ctx context.Context) {
Expand All @@ -783,16 +761,17 @@ var _ = Describe("ARO Operator - Guardrails", func() {
Skip("Guardrails Controller is not enabled, skipping test")
}

getFunc := clients.Kubernetes.AppsV1().Deployments(guardrailsNamespace).Get
deleteFunc := clients.Kubernetes.AppsV1().Deployments(guardrailsNamespace).Delete

By("waiting for the gatekeeper Audit deployment to be ready")
waitForGatekeeperDeploymentReady(ctx, gkAuditDeployment)
GetK8sObjectWithRetry(ctx, getFunc, gkAuditDeployment, metav1.GetOptions{})

By("deleting the gatekeeper Audit deployment")
DeleteK8sObjectWithRetry(ctx, deleteFunc, gkAuditDeployment, metav1.DeleteOptions{})

By("waiting for the gatekeeper Audit deployment to be reconciled and ready")
waitForGatekeeperDeploymentReady(ctx, gkAuditDeployment)
By("waiting for the gatekeeper Audit deployment to be reconciled")
GetK8sObjectWithRetry(ctx, getFunc, gkAuditDeployment, metav1.GetOptions{})
})
})

Expand Down
Loading