Add information how much time take base and user phase

This commit is contained in:
Tomasz Sęk 2019-02-18 22:00:54 +01:00
parent 318e489c9e
commit 5996e63db9
No known key found for this signature in database
GPG Key ID: DC356D23F6A644D0
4 changed files with 13 additions and 3 deletions

View File

@ -32,6 +32,7 @@ type JenkinsMaster struct {
type JenkinsStatus struct { type JenkinsStatus struct {
// INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster
// Important: Run "operator-sdk generate k8s" to regenerate code after modifying this file // Important: Run "operator-sdk generate k8s" to regenerate code after modifying this file
ProvisionStartTime *metav1.Time `json:"provisionStartTime,omitempty"`
BaseConfigurationCompletedTime *metav1.Time `json:"baseConfigurationCompletedTime,omitempty"` BaseConfigurationCompletedTime *metav1.Time `json:"baseConfigurationCompletedTime,omitempty"`
UserConfigurationCompletedTime *metav1.Time `json:"userConfigurationCompletedTime,omitempty"` UserConfigurationCompletedTime *metav1.Time `json:"userConfigurationCompletedTime,omitempty"`
Builds []Build `json:"builds,omitempty"` Builds []Build `json:"builds,omitempty"`

View File

@ -191,6 +191,10 @@ func (in *JenkinsSpec) DeepCopy() *JenkinsSpec {
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *JenkinsStatus) DeepCopyInto(out *JenkinsStatus) { func (in *JenkinsStatus) DeepCopyInto(out *JenkinsStatus) {
*out = *in *out = *in
if in.ProvisionStartTime != nil {
in, out := &in.ProvisionStartTime, &out.ProvisionStartTime
*out = (*in).DeepCopy()
}
if in.BaseConfigurationCompletedTime != nil { if in.BaseConfigurationCompletedTime != nil {
in, out := &in.BaseConfigurationCompletedTime, &out.BaseConfigurationCompletedTime in, out := &in.BaseConfigurationCompletedTime, &out.BaseConfigurationCompletedTime
*out = (*in).DeepCopy() *out = (*in).DeepCopy()

View File

@ -303,7 +303,10 @@ func (r *ReconcileJenkinsBaseConfiguration) ensureJenkinsMasterPod(meta metav1.O
if err != nil { if err != nil {
return reconcile.Result{}, stackerr.WithStack(err) return reconcile.Result{}, stackerr.WithStack(err)
} }
r.jenkins.Status = v1alpha1.JenkinsStatus{} now := metav1.Now()
r.jenkins.Status = v1alpha1.JenkinsStatus{
ProvisionStartTime: &now,
}
err = r.updateResource(r.jenkins) err = r.updateResource(r.jenkins)
if err != nil { if err != nil {
return reconcile.Result{}, err // don't wrap error return reconcile.Result{}, err // don't wrap error

View File

@ -168,7 +168,8 @@ func (r *ReconcileJenkins) reconcile(request reconcile.Request, logger logr.Logg
if err != nil { if err != nil {
return reconcile.Result{}, errors.WithStack(err) return reconcile.Result{}, errors.WithStack(err)
} }
logger.Info("Base configuration phase is complete") logger.Info(fmt.Sprintf("Base configuration phase is complete, took %s",
jenkins.Status.BaseConfigurationCompletedTime.Sub(jenkins.Status.ProvisionStartTime.Time)))
r.events.Emit(jenkins, event.TypeNormal, reasonBaseConfigurationSuccess, "Base configuration completed") r.events.Emit(jenkins, event.TypeNormal, reasonBaseConfigurationSuccess, "Base configuration completed")
} }
// Reconcile user configuration // Reconcile user configuration
@ -199,7 +200,8 @@ func (r *ReconcileJenkins) reconcile(request reconcile.Request, logger logr.Logg
if err != nil { if err != nil {
return reconcile.Result{}, errors.WithStack(err) return reconcile.Result{}, errors.WithStack(err)
} }
logger.Info("User configuration phase is complete") logger.Info(fmt.Sprintf("User configuration phase is complete, took %s",
jenkins.Status.UserConfigurationCompletedTime.Sub(jenkins.Status.ProvisionStartTime.Time)))
r.events.Emit(jenkins, event.TypeNormal, reasonUserConfigurationSuccess, "User configuration completed") r.events.Emit(jenkins, event.TypeNormal, reasonUserConfigurationSuccess, "User configuration completed")
} }