mirror of
https://github.com/ClusterCockpit/cc-backend
synced 2024-12-27 05:49:04 +01:00
38 lines
1.2 KiB
Markdown
38 lines
1.2 KiB
Markdown
|
# 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.
|
||
|
|
||
|
# How to build a specific release
|
||
|
|
||
|
|
||
|
# How to migrate the SQL database
|
||
|
|
||
|
|
||
|
# How to migrate the job archive
|
||
|
|
||
|
|