@@ -132,6 +132,90 @@ var _ = Describe("OVNNorthd controller", func() {
132132 })
133133 })
134134
135+ When ("A OVNNorthd Deployment rollout is progressing" , func () {
136+ var ovnNorthdName types.NamespacedName
137+ var deploymentName types.NamespacedName
138+ BeforeEach (func () {
139+ dbs := CreateOVNDBClusters (namespace , map [string ][]string {}, 1 )
140+ DeferCleanup (DeleteOVNDBClusters , dbs )
141+ spec := GetDefaultOVNNorthdSpec ()
142+ ovnNorthdName = ovn .CreateOVNNorthd (nil , namespace , spec )
143+ DeferCleanup (ovn .DeleteOVNNorthd , ovnNorthdName )
144+ deploymentName = types.NamespacedName {
145+ Namespace : namespace ,
146+ Name : "ovn-northd" ,
147+ }
148+ th .SimulateDeploymentProgressing (deploymentName )
149+ })
150+
151+ It ("shows the deployment progressing in DeploymentReadyCondition" , func () {
152+ th .ExpectConditionWithDetails (
153+ ovnNorthdName ,
154+ ConditionGetterFunc (OVNNorthdConditionGetter ),
155+ condition .DeploymentReadyCondition ,
156+ corev1 .ConditionFalse ,
157+ condition .RequestedReason ,
158+ condition .DeploymentReadyRunningMessage ,
159+ )
160+ th .ExpectCondition (
161+ ovnNorthdName ,
162+ ConditionGetterFunc (OVNNorthdConditionGetter ),
163+ condition .ReadyCondition ,
164+ corev1 .ConditionFalse ,
165+ )
166+ })
167+
168+ It ("still shows the deployment progressing in DeploymentReadyCondition when rollout hits ProgressDeadlineExceeded" , func () {
169+ th .SimulateDeploymentProgressDeadlineExceeded (deploymentName )
170+ th .ExpectConditionWithDetails (
171+ ovnNorthdName ,
172+ ConditionGetterFunc (OVNNorthdConditionGetter ),
173+ condition .DeploymentReadyCondition ,
174+ corev1 .ConditionFalse ,
175+ condition .RequestedReason ,
176+ condition .DeploymentReadyRunningMessage ,
177+ )
178+ th .ExpectCondition (
179+ ovnNorthdName ,
180+ ConditionGetterFunc (OVNNorthdConditionGetter ),
181+ condition .ReadyCondition ,
182+ corev1 .ConditionFalse ,
183+ )
184+ })
185+
186+ It ("reaches Ready when deployment rollout finished" , func () {
187+ th .ExpectConditionWithDetails (
188+ ovnNorthdName ,
189+ ConditionGetterFunc (OVNNorthdConditionGetter ),
190+ condition .DeploymentReadyCondition ,
191+ corev1 .ConditionFalse ,
192+ condition .RequestedReason ,
193+ condition .DeploymentReadyRunningMessage ,
194+ )
195+ th .ExpectCondition (
196+ ovnNorthdName ,
197+ ConditionGetterFunc (OVNNorthdConditionGetter ),
198+ condition .ReadyCondition ,
199+ corev1 .ConditionFalse ,
200+ )
201+
202+ th .SimulateDeploymentReplicaReady (deploymentName )
203+ th .ExpectCondition (
204+ ovnNorthdName ,
205+ ConditionGetterFunc (OVNNorthdConditionGetter ),
206+ condition .DeploymentReadyCondition ,
207+ corev1 .ConditionTrue ,
208+ )
209+
210+ th .ExpectCondition (
211+ ovnNorthdName ,
212+ ConditionGetterFunc (OVNNorthdConditionGetter ),
213+ condition .ReadyCondition ,
214+ corev1 .ConditionTrue ,
215+ )
216+ })
217+ })
218+
135219 When ("OVNNorthd is created with nodeSelector" , func () {
136220 var ovnNorthdName types.NamespacedName
137221 var deploymentName types.NamespacedName
0 commit comments