diff --git a/cyclops-ctrl/api/v1alpha1/module_types.go b/cyclops-ctrl/api/v1alpha1/module_types.go index 3789d0a3..9f65fcb4 100644 --- a/cyclops-ctrl/api/v1alpha1/module_types.go +++ b/cyclops-ctrl/api/v1alpha1/module_types.go @@ -77,7 +77,9 @@ type ReconciliationStatus struct { // +kubebuilder:validation:Optional Reason string `json:"reason,omitempty"` // +kubebuilder:validation:Optional - Errors []string `json:"errors"` + Errors []string `json:"errors"` + // +kubebuilder:validation:Optional + FinishedAt string `json:"finishedAt,omitempty"` } type GroupVersionResource struct { @@ -110,6 +112,8 @@ type HistoryEntry struct { Generation int64 `json:"generation"` TemplateRef HistoryTemplateRef `json:"template"` Values apiextensionsv1.JSON `json:"values"` + // +kubebuilder:validation:Optional + FinishedAt string `json:"finishedAt,omitempty"` } //+kubebuilder:object:root=true diff --git a/cyclops-ctrl/config/crd/bases/cyclops-ui.com_modules.yaml b/cyclops-ctrl/config/crd/bases/cyclops-ui.com_modules.yaml index 59e43623..b5bcbafb 100644 --- a/cyclops-ctrl/config/crd/bases/cyclops-ui.com_modules.yaml +++ b/cyclops-ctrl/config/crd/bases/cyclops-ui.com_modules.yaml @@ -29,6 +29,8 @@ spec: history: items: properties: + finishedAt: + type: string generation: format: int64 type: integer @@ -125,6 +127,8 @@ spec: items: type: string type: array + finishedAt: + type: string reason: type: string status: diff --git a/cyclops-ctrl/internal/modulecontroller/module_controller.go b/cyclops-ctrl/internal/modulecontroller/module_controller.go index 476371db..f8e7857b 100644 --- a/cyclops-ctrl/internal/modulecontroller/module_controller.go +++ b/cyclops-ctrl/internal/modulecontroller/module_controller.go @@ -443,9 +443,10 @@ func (r *ModuleReconciler) setStatus( module.Status = cyclopsv1alpha1.ModuleStatus{ ReconciliationStatus: cyclopsv1alpha1.ReconciliationStatus{ - Status: status, - Reason: reason, - Errors: installErrors, + Status: status, + Reason: reason, + Errors: installErrors, + FinishedAt: time.Now().Format(time.RFC3339), // Convert time to string format }, ManagedGVRs: r.mergeChildrenGVRs(module.Status.ManagedGVRs, childrenResources), TemplateResolvedVersion: templateResolvedVersion,