func()

in pkg/controller/jenkins_job/chain/put_jenkins_pipeline.go [61:89]


func (h PutJenkinsPipeline) tryToCreateJob(jj *jenkinsApi.JenkinsJob) error {
	jc, err := h.initGoJenkinsClient(jj)
	if err != nil {
		return err
	}

	s, err := plutil.GetStageInstanceOwner(h.client, jj)
	if err != nil {
		return fmt.Errorf("failed to get StageInstanceOwner: %w", err)
	}

	json, err := h.ps.CreateStageJSON(s)
	if err != nil {
		return fmt.Errorf("failed to create StageJSON: %w", err)
	}

	conf, err := h.createStageConfig(s, json, jj.Spec.Job.Config)
	if err != nil {
		return err
	}

	if err := h.createJob(jc, conf, jj); err != nil {
		return fmt.Errorf("failed to create jenkins job: %w", err)
	}

	h.log.Info("job has been created", logNameKey, jj.Spec.Job.Name)

	return nil
}