Open jeffhhk opened 3 years ago
It's "simple" to apply at the architectural level: NGINX aliasing would redirect various semantic versioned API's to distinct docker containers running such variants. The hard part may be the management of the code base and docker-compose collection of containers to allow for this.
We can ponder this further once a relatively stable initial production release is finalized for the September 2021 relay. Maybe branding that release as the official V1 (web services backend) release, then moving future production iterations into a fresh release branch, may be feasible at that point.
Add a semantic versoning prefix to the KGE URLs, so that you can keep things running as you need to improve your system. So e.g.:
GET https://archive.translator.ncats.io/archive/yeast-sri-reference-kg-tsv/1.0/download
becomes:
GET https://archive.translator.ncats.io/v1/archive/yeast-sri-reference-kg-tsv/1.0/download
That way, when it is convenient to break with backward compatibility for the service calls necessary to drive your UI, it doesn't necessarily have to come at the cost of breaking programmatic consumers of KGE.