Conversation
|
Here it is running at NERSC: https://api.iri.nersc.gov/api/v2 |
| "version": API_VERSION, | ||
| "docs_url": "/", | ||
| "docs_url": f"/{API_URL}", | ||
| "openapi_url": f"/{API_URL}/openapi.json", |
There was a problem hiding this comment.
I had to make docs_url and openapi_url unique so we could serve them at the same time. For some reason path rewriting in the ingress rules did not work for me.
|
The nersc implementation uses redis-queues for the MQ. For v2, the queue name is: |
|
I think we need to rethink the directory structure for the Python reference implementation. As we might evolve soon from V1 -> V2 -> V3..., we need to split core functionality from semantics (and all versions should share the same implementation). If we organize by version: While I think this would be cleaner solution: There will be some corner cases (like error_handler), and this would need to be dynamic (not static as is right now). Also, note an important caveat: v2 for compute does not clone all v1 functionality; it only adds new features. In this case v1 remains untouched, and v2/v3/v4 can be implemented on their own timelines and readiness level. |
|
Here is vibe coded split: #84 for v1/v2 |
|
I think both approach has pros/cons. Where the common codebase fails is supporting the same api doing different things in different versions. We also need to think about the swagger experience. Currently, docs are under |
V2 changes. It's up to the facility handle putting and processing tasks on separate queues for v2 functionality.