func()

in pkg/service/jenkins/jenkins.go [649:683]


func (j JenkinsServiceImpl) Configure(instance *jenkinsApi.Jenkins) (*jenkinsApi.Jenkins, bool, error) {
	adminTokenSecretName := fmt.Sprintf(configMapStringFormat, instance.Name, jenkinsDefaultSpec.JenkinsTokenAnnotationSuffix)

	adminTokenSecret, err := j.platformService.GetSecretData(instance.Namespace, adminTokenSecretName)
	if err != nil {
		return instance, false, fmt.Errorf("failed to get admin token secret for %v: %w", instance.Name, err)
	}

	if adminTokenSecret == nil {
		updatedInstance, handleErr := j.handleEmptyAdminTokenSecret(instance, adminTokenSecretName)
		if handleErr != nil {
			return updatedInstance, false, fmt.Errorf("failed to handle empty AdminTokenSecret: %w", handleErr)
		}

		instance = updatedInstance
	}

	if err = j.createScriptsFromDefaultDir(instance); err != nil {
		return instance, false, fmt.Errorf("failed to create Scripts from Default Dir: %w", err)
	}

	if err = j.createJobProvisionsFromDefaultDir(instance); err != nil {
		return instance, false, fmt.Errorf("failed to create JobProvisions from Default Dir: %w", err)
	}

	if err = j.createSlavesFromDefaultDir(instance); err != nil {
		return instance, false, fmt.Errorf("failed to create Slaves from Default Dir: %w", err)
	}

	if err = j.createTemplatesFromDefaultDir(instance); err != nil {
		return instance, false, fmt.Errorf("failed to create Templates from Default Dir: %w", err)
	}

	return instance, true, nil
}