in pkg/service/jenkins/jenkins.go [511:540]
func (j JenkinsServiceImpl) handleEmptyAdminTokenSecret(instance *jenkinsApi.Jenkins, adminTokenSecretName string,
) (*jenkinsApi.Jenkins, error) {
jc, err := j.newJenkinsClient(instance)
if err != nil {
return instance, fmt.Errorf("failed to create new JenkinsClient: %w", err)
}
token, getAdminTokenErr := jc.GetAdminToken()
if getAdminTokenErr != nil {
return instance, fmt.Errorf("failed to get token from admin user: %w", getAdminTokenErr)
}
if err = j.createSecret(instance, adminTokenSecretName, jenkinsDefaultSpec.JenkinsDefaultAdminUser, token); err != nil {
return instance, fmt.Errorf("failed to create secret: %w", err)
}
adminTokenAnnotationKey := helper.GenerateAnnotationKey(jenkinsDefaultSpec.JenkinsTokenAnnotationSuffix)
setAnnotation(instance, adminTokenAnnotationKey, adminTokenSecretName)
if err = j.k8sClient.Update(context.TODO(), instance); err != nil {
return instance, fmt.Errorf("failed to update jenkins instance: %w", err)
}
updatedInstance, setSecretErr := j.setAdminSecretInStatus(instance, adminTokenSecretName)
if setSecretErr != nil {
return instance, fmt.Errorf("failed to set AdminSecret in Status: %w", setSecretErr)
}
return updatedInstance, nil
}