Skip to content

Commit 746d78f

Browse files
committed
helper function to update LastTransitionTime right before reconciler
1 parent 4852b67 commit 746d78f

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

test/infrastructure/docker/internal/controllers/backends/inmemory/inmemorymachine_controller_test.go

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -375,6 +375,9 @@ func TestReconcileNormalEtcd(t *testing.T) {
375375
r.InMemoryManager.AddResourceGroup(klog.KObj(cluster).String())
376376
c := r.InMemoryManager.GetResourceGroup(klog.KObj(cluster).String()).GetClient()
377377

378+
// Note: We have to update the lastTransitionTime of the NodeProvisioned condition
379+
// to ensure provisioning time is not expired yet.
380+
updateNodeProvisionedTime(inMemoryMachineWithNodeProvisioned1)
378381
res, err := r.reconcileNormalETCD(ctx, cluster, cpMachine, inMemoryMachineWithNodeProvisioned1)
379382
g.Expect(err).ToNot(HaveOccurred())
380383
g.Expect(res.IsZero()).To(BeFalse())
@@ -610,6 +613,9 @@ func TestReconcileNormalApiServer(t *testing.T) {
610613
r.InMemoryManager.AddResourceGroup(klog.KObj(cluster).String())
611614
c := r.InMemoryManager.GetResourceGroup(klog.KObj(cluster).String()).GetClient()
612615

616+
// Note: We have to update the lastTransitionTime of the NodeProvisioned condition
617+
// to ensure provisioning time is not expired yet.
618+
updateNodeProvisionedTime(inMemoryMachineWithNodeProvisioned)
613619
res, err := r.reconcileNormalAPIServer(ctx, cluster, cpMachine, inMemoryMachineWithNodeProvisioned)
614620
g.Expect(err).ToNot(HaveOccurred())
615621
g.Expect(res.IsZero()).To(BeFalse())
@@ -845,3 +851,21 @@ func newSelfSignedCACert(key *rsa.PrivateKey) (*x509.Certificate, error) {
845851
c, err := x509.ParseCertificate(b)
846852
return c, errors.WithStack(err)
847853
}
854+
855+
func updateNodeProvisionedTime(machine *infrav1.DevMachine) {
856+
for i := range machine.Status.Conditions {
857+
if machine.Status.Conditions[i].Type == string(infrav1.NodeProvisionedCondition) {
858+
machine.Status.Conditions[i].LastTransitionTime = metav1.Now()
859+
return
860+
}
861+
}
862+
863+
if machine.Status.Deprecated != nil && machine.Status.Deprecated.V1Beta1 != nil {
864+
for i := range machine.Status.Deprecated.V1Beta1.Conditions {
865+
if machine.Status.Deprecated.V1Beta1.Conditions[i].Type == infrav1.NodeProvisionedCondition {
866+
machine.Status.Deprecated.V1Beta1.Conditions[i].LastTransitionTime = metav1.Now()
867+
return
868+
}
869+
}
870+
}
871+
}

0 commit comments

Comments
 (0)