mirror of
https://github.com/ClusterCockpit/cc-backend
synced 2024-12-25 04:49:05 +01:00
1.2 KiB
1.2 KiB
Release versioning
Releases are numbered with a integer id starting with 1. Every release embeds the following assets into the binary:
- Web-frontend including javascript files and all static assets
- Golang template files for server-side rendering
- JSON schema files for validation
Remaining external assets are:
- The SQL database used
- The job archive
Both external assets are also versioned using integer ids.
This means every release binary is tied to specific versions for the SQL
database and job archive.
A command line switch --migrate-db
is provided to migrate the SQL database
from a previous to the most recent version.
We provide a separate tool archive-migration
to migrate an existing job
archive from the previous to the most recent version.
Versioning of APIs
cc-backend provides two API backends:
- A REST API for querying jobs
- A GraphQL API used for data exchange between web frontend and cc-backend
Both APIs will also be versioned. We still need to decide if we also support older REST API version using versioning of the endpoint URLs.