Skip to content

Conversation

@qqmyers
Copy link
Member

@qqmyers qqmyers commented Feb 6, 2025

What this PR does / why we need it: This PR adds one area of functionality supported through a grant to GDCC from the ORCID Global Participation Fund.

Specifically, it allows Dataverse users to add a link to their ORCID profile which then allows Dataverse to use automatically add their ORCID to their author metadata when they create a dataset.

This functionality leverages Dataverse's existing support for login via ORCID, but can be turned on independently of it. If ORCID login is enabled, the user's ORCID will automatically be added to their profile. If the user has logged in via some other mechanism, they are able to click a button to initiate a similar authentication process in which the user must login to their ORCID account and approve the connection.

This PR should be functional as is, but it is possible/likely that further changes could be made based on user feedback.

Which issue(s) this PR closes:

Special notes for your reviewer:

Suggestions on how to test this: Use/create an ORCID OAuth2 provider as was previously possible and verify that logging in with that provider adds the ORCID to the user account (Account Info page), that when logging in with a builtin/other account, you can click the 'Add Authenticated ORCID' button to add one, and use the Edit Account/Remove ORCID menu item to remove it, that while the ORCID is in the account from whatever route, that creating a dataset results in the user with their ORCID being added as an author of the dataset.

To verify that this new functionality can be configured w/o allowing ORCID login, reinstall the ORCID provider with its "enabled" flag set false (or toggle the enabled field in the db, e.g. update authenticationproviderrow set enabled='f' where id='orcid'; for a standard config.)

Also verify that if no ORCID provider exists, the ability to add an ORCID is not displayed.

Does this PR introduce a user interface change? If mockups are available, please link/include them here:
Account Info showing option to add ORCID
image
ORCID login
image
ORCID Approval screen
image
ORCID in Account Info pane showing remove orcid menu item

image
New Dataset showing ORCID of author used when auto-filling.
image

Is there a release notes update needed for this change?: included

Additional documentation:

Preview docs at https://dataverse-guide--11222.org.readthedocs.build/en/11222/installation/orcid.html

@qqmyers qqmyers added Size: 10 A percentage of a sprint. 7 hours. GDCC:ORCID Priority for the ORCID Global Participation Fund Grant GDCC: QDR of interest to QDR labels Feb 6, 2025
@coveralls
Copy link

coveralls commented Feb 6, 2025

Coverage Status

coverage: 22.697% (-0.01%) from 22.709%
when pulling 0edbdf6 on GlobalDataverseCommunityConsortium:ORCID_1
into de508eb on IQSS:develop.

@DS-INRAE
Copy link
Member

DS-INRAE commented Feb 7, 2025

Great! Is this only for Dataverse internal accounts?

@qqmyers
Copy link
Member Author

qqmyers commented Feb 7, 2025

No - it doesn't matter how you log in.

@qqmyers qqmyers added this to the 6.6 milestone Feb 12, 2025
Copy link
Member

@pdurbin pdurbin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tests are failing as of https://jenkins.dataverse.org/job/IQSS-Dataverse-Develop-PR/job/PR-11222/8/testReport/ but I'm pretty sure these are test that are known to be failing:

Thank you, @qqmyers for addressing all my concerns. I pushed a couple doc tweaks while I was on the branch.

I didn't test the feature at all but the code makes sense to me, and it's a very nice feature! Approved.

@github-project-automation github-project-automation bot moved this from In Review 🔎 to Ready for QA ⏩ in IQSS Dataverse Project Mar 4, 2025
@pdurbin pdurbin removed their assignment Mar 4, 2025
@ofahimIQSS ofahimIQSS self-assigned this Mar 5, 2025
@ofahimIQSS ofahimIQSS moved this from Ready for QA ⏩ to QA ✅ in IQSS Dataverse Project Mar 5, 2025
@ofahimIQSS
Copy link
Contributor

Getting error on this: Caused by: org.flywaydb.core.api.exception.FlywayValidateException: Validate failed: Migrations have failed validation
Detected applied migration not resolved locally: 6.5.0.7.

@ofahimIQSS
Copy link
Contributor

This PR needs to get updated, seeing branch conflicts - Thanks!

@ofahimIQSS
Copy link
Contributor

Testing Evidence:

-bash-4.2$ 'psql -U dvnapp -d dvndbsimple -c "UPDATE authenticationproviderrow set enabled='t' where id='orcid-public'"'
UPDATE 1

image

image

-bash-4.2$ psql -U dvnapp -d dvndbsimple -c "UPDATE authenticationproviderrow set enabled='f' where id='orcid-public'"
UPDATE 1

image
image

@ofahimIQSS
Copy link
Contributor

ofahimIQSS commented Mar 6, 2025

Branch has conflicts

One observation was made which we are currently investigating:

https://drive.google.com/file/d/1B-LQzr_2XC5bZZV5Nb68axhhyELfxiA9/view?usp=drive_link

@ofahimIQSS
Copy link
Contributor

I see continuous-integration failing on this one

@ofahimIQSS
Copy link
Contributor

Everything looks good on this PR - waiting for continuous-integration to pass, and then I will merge.

@ofahimIQSS ofahimIQSS merged commit 366d7ac into IQSS:develop Mar 7, 2025
14 checks passed
@github-project-automation github-project-automation bot moved this from QA ✅ to Merged 🚀 in IQSS Dataverse Project Mar 7, 2025
@scolapasta scolapasta moved this from Merged 🚀 to Done 🧹 in IQSS Dataverse Project Mar 10, 2025
@ofahimIQSS ofahimIQSS removed their assignment Sep 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

FY25 Sprint 18 FY25 Sprint 18 (2025-02-26 - 2025-03-12) GDCC:ORCID Priority for the ORCID Global Participation Fund Grant GDCC: QDR of interest to QDR Size: 10 A percentage of a sprint. 7 hours.

Projects

Status: Done 🧹

Development

Successfully merging this pull request may close these issues.

Allow an ORCID to be associated with a Dataverse account

6 participants