mediacloud / news-search-api

Internal API server that offers search access to the Media Cloud Online News Archive (in Elasticsearch).
https://mediacloud.org
GNU Affero General Public License v3.0
1 stars 3 forks source link

document release process #3

Closed rahulbot closed 8 months ago

rahulbot commented 11 months ago

After some discussion we've decided to treat this as an independent project with its own release management; this should ease integration into the core Media Cloud indexer. See detailed notes on https://github.com/mediacloud/story-indexer/issues/92, but to quote @philbudne :

My current thinking is to have story-indexer treat news-search-api (NSA) as an external project, and to make semantically versioned releases (only incrementing the major version to 2 if a new top level version of the API becomes visible (ie; /v2/ in the URL), and for the story-indexer docker-compose file expect that an image tagged with the NSA version/release number appear in a well-known location (be that a private or public image repo).

(Some of) our other JSON APIs make a server software version number available in all responses (or in response to an API version number endpoint?), so if we go this route, I would vote to make NSA server version visible in responses, which would allow client software (ie; the news search Django app) to detect when:

  1. new top level API versions are available (major version incremented)
  2. new calls available, or new optional arguments available for old calls (minor version incremented)
  3. bug fixes available, and workarounds no longer needed (patch version incremented)

This should be captured in documentation in this repo and added to as we formalize this. I will split this off into separate issues for associated sub-tasks.

rahulbot commented 8 months ago

Documented current process in README.md