Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhance Invenio RDM integration #16964

Merged

Conversation

davelopez
Copy link
Contributor

@davelopez davelopez commented Nov 2, 2023

  • Avoid erroring out when serializing file sources without credentials
  • Improve the error message when trying to download files from non-public records. This might be possible in the future but there is currently no way of accessing the user credentials when fetching the files.
  • Workaround for Invenio instances that use a remote or external storage backend instead of local files. Those files cannot be downloaded using the Invenio API (there is no support yet) but we can directly use the front-end download link to download them from Galaxy.

How to test the changes?

  • Instructions for manual testing are as follows:

    • You can try this out with the [DataPLANT Invenio instance[(https://invenio.nfdi4plants.org/) which uses S3 as the storage backend
    • Setup your file_sources configuration:
    # file_sources_conf.yml
    - type: inveniordm
      id: invenio
      doc: Invenio RDM The turn-key research data management repository
      label: Invenio RDM DataPLANT
      url: https://invenio.nfdi4plants.org
      token: ${user.preferences['invenio|token']}
      public_name: ${user.preferences['invenio|public_name']}
      writable: true
    
    # user_preferences_extra_conf.yml
    invenio:
        description: Your Invenio RDM Account
        inputs:
            - name: token
              label: Personal Token to publish records to Invenio RDM
              type: secret
              store: vault # Requires setting up vault_config_file in your galaxy.yml
              required: False
            - name: public_name
              label: Public name to publish records (formatted as "Lastname, Firstname")
              type: text
              required: False
    • Use the Upload tool to import a file from a public record using the remote file sources.

License

  • I agree to license these and all my past contributions to the core galaxy codebase under the MIT license.

@github-actions github-actions bot added this to the 23.2 milestone Nov 2, 2023
@jmchilton jmchilton merged commit 2baee6a into galaxyproject:dev Nov 2, 2023
49 of 50 checks passed
@davelopez davelopez deleted the invenio_external_storage_workaround branch November 2, 2023 22:19
@davelopez
Copy link
Contributor Author

Thank you John!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants