func()

in pkg/controller/jenkins_job/jenkins_job_controller.go [225:249]


func (r *ReconcileJenkinsJob) tryToDeleteJob(ctx context.Context, jj *jenkinsApi.JenkinsJob) (*reconcile.Result, error) {
	if jj.GetDeletionTimestamp().IsZero() {
		if !finalizer.ContainsString(jj.ObjectMeta.Finalizers, jenkinsJobFinalizerName) {
			jj.ObjectMeta.Finalizers = append(jj.ObjectMeta.Finalizers, jenkinsJobFinalizerName)

			if err := r.client.Update(ctx, jj); err != nil {
				return &reconcile.Result{}, fmt.Errorf("failed to Update jenkins job: %w", err)
			}
		}

		return nil, nil
	}

	if err := r.deleteJob(jj); err != nil {
		return &reconcile.Result{}, err
	}

	jj.ObjectMeta.Finalizers = finalizer.RemoveString(jj.ObjectMeta.Finalizers, jenkinsJobFinalizerName)

	if err := r.client.Update(ctx, jj); err != nil {
		return &reconcile.Result{}, fmt.Errorf("failed to Update jenkins job: %w", err)
	}

	return &reconcile.Result{}, nil
}