ga4gh / tool-registry-service-schemas

APIs for discovering genomics tools, their metadata and their containers
Apache License 2.0
30 stars 18 forks source link

base path problem with TRS URIs #220

Open denis-yuen opened 2 years ago

denis-yuen commented 2 years ago

Proposal to break this discussion off from the PR discussion in https://github.com/ga4gh/tool-registry-service-schemas/pull/202

This problem focuses on the issue that TRS URIs as proposed do not include a base path. Without a base path, you can tell which domain a TRS URI is referring to, but not the exact endpoints.. For example trs://<server>/<id>/<version_id> tells you to go to server but not specifically where. dockstore.org hosts various versions (2.0 beta, 2.0 final, v1) TRS endpoints under api while workflowhub.eu serves it at the root.

From rough notes:

┆Issue is synchronized with this Jira Story ┆Project Name: Zzz-ARCHIVE GA4GH tool-registry-service ┆Issue Number: TRS-56

denis-yuen commented 2 years ago

Relevant comment chain at https://github.com/ga4gh/tool-registry-service-schemas/pull/202#discussion_r868426491

denis-yuen commented 2 years ago

Brian: service info discussion, not sure if we established clear convention at particular paths on the host. Would be a good for GA4GH to use something like the registry or a convention that could allow for self-describing how to interact with a server Alex: we need DRS and TRS participants to chat, both APIs have this problem. service-info is an issue because its nested inside the API, so by the time you have it ... Brian: can there be like a root service-info? or maybe the path of least resistance is to use the service registry?

David: for DRS, it seems to specify how to get from URI to URL, handwaves over which version of DRS you want to talk to. Example documentation seems to assume DRS is hosted on the root (can the hostname include a path?) Brian: may have been implicit assumption that all DRS servers do have this assumption that it is on the root Jose: can we urlencode the prefix/path into the hostname? Alex: may not be a huge deal (there may be a workaround) Discussion on API versioning, what obligations/assumptions should there be about what versions of the API are available

Brian: Someone may need to do a PR to TRS or DRS do demonstrate how to work with URIs that include paths. Can include path, but probably shouldn't encode versions (may break in the future). Schema may change in the future, but the URI should be stable over time

Table this for a week depending on whether we have a volunteer to look into this, otherwise should not be considered blocker for plenary

denis-yuen commented 2 years ago

Yash: discussion on endpoints in GA4GH registry would be useful to take a look, potentially today Brian: Does it make available a list of all the servers and a list of paths on those servers where services are available, Denis also interested. Current process seems to be via email.