in pkg/controller/shared_library/controller.go [159:202]
func (r *Reconcile) prepareSharedLibraries(ctx context.Context,
instance *jenkinsApi.JenkinsSharedLibrary,
rootLibraries []jenkinsApi.JenkinsSharedLibraries,
) ([]jenkinsApi.JenkinsSharedLibraries, error) {
var libList jenkinsApi.JenkinsSharedLibraryList
if err := r.client.List(ctx, &libList, &client.ListOptions{Namespace: instance.Namespace}); err != nil {
return nil, fmt.Errorf("failed to list jenkins shared libraries: %w", err)
}
for i := 0; i < len(libList.Items); i++ {
libOwnerName, instanceOwnerName := "", ""
if libList.Items[i].Spec.OwnerName != nil {
libOwnerName = *libList.Items[i].Spec.OwnerName
}
if instance.Spec.OwnerName != nil {
instanceOwnerName = *instance.Spec.OwnerName
}
if libOwnerName == instanceOwnerName && libList.Items[i].Name != instance.Name {
credentialID := libList.Items[i].Spec.CredentialID
rootLibraries = append(rootLibraries, jenkinsApi.JenkinsSharedLibraries{
Name: libList.Items[i].Spec.Name,
CredentialID: &credentialID,
Tag: libList.Items[i].Spec.Tag,
URL: libList.Items[i].Spec.URL,
})
}
}
if instance.ObjectMeta.DeletionTimestamp.IsZero() {
rootLibraries = append(rootLibraries, jenkinsApi.JenkinsSharedLibraries{
Name: instance.Spec.Name,
CredentialID: &instance.Spec.CredentialID,
Tag: instance.Spec.Tag,
URL: instance.Spec.URL,
})
}
return rootLibraries, nil
}