SwissDataScienceCenter / renku

Renku provides a platform and tools for reproducible and collaborative data analysis.
https://renkulab.io
Apache License 2.0
225 stars 34 forks source link

Renku API design #674

Open ableuler opened 5 years ago

ableuler commented 5 years ago

Upcoming or already existing Renku features make it necessary to re-think our URL patterns and the separation of concern between the gateway and our different backend services.

In an offline discussion during a Renku meeting we have agreed on the following 3 fundamental points:


See also https://github.com/SwissDataScienceCenter/renku-gateway/issues/169 for a discussion on this topic.

rokroskar commented 4 years ago

There is a discussion in #676 to assign a specific service URL to the UI, e.g. https://<some-renku>/ui - this looks a bit strange to me. Has there been any discussion in using e.g. https://entities.<some-renku>/datasets/:id for example? Or is there a strong preference to use sub-paths instead of sub-domains? I could see getting wildcard DNS to be problematic for some deployments so maybe that's a point against. Then again, this could be a configurable property of the renku deployment and need not be hard-coded.

ciyer commented 4 years ago

From today's discussion, we agreed to use URLs of the form [domain]/entities/[entity-kind] e.g., http://renkulab.io/entities/datasets/ for the entity URIs. The argument for this is that the URIs that the user will most likely see are the URLs for the UI, and we want to keep these as simple as possible.

rokroskar commented 4 years ago

Two topics come to mind from today's discussion:

  1. what is the URI of a specific version of a dataset?
  2. what is the URI of a file?