Skip to content

Commit

Permalink
feat(swagger): add backup, restore and task manager Scylla API (#4100)
Browse files Browse the repository at this point in the history
* feat(swagger): scylla, add task manager endpoints

They can be used to abort Scylla task, check its progress, etc...
Definitions were taken from:
https://github.com/scylladb/scylladb/blob/f3f956841fc4fb720626de2d036478d64c76dd3a/api/api-doc/task_manager.json#L5

* feat(swagger): scylla, add backup and restore endpoints

They will eventually be used to replace currently used rclone server.
Definitions were taken from:
https://github.com/scylladb/scylladb/blob/ee92784098689125708f88fa9441ccd8e68b6ae9/api/api-doc/storage_service.json#L758

* feat(swagger): add README file
  • Loading branch information
Michal-Leszczynski authored Nov 12, 2024
1 parent b07434f commit 4fc93b5
Show file tree
Hide file tree
Showing 26 changed files with 4,336 additions and 0 deletions.
13 changes: 13 additions & 0 deletions v3/swagger/README.MD
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
This module contains the following swagger definitions used in *Scylla Manager* repository:

1. **scylla-manager** - describes *Scylla Manager* API. It is mainly used by the *sctool* CLI and *Scylla Cloud* and *Scylla Operator* teams.

2. **scylla-manager-agent** - describes *Scylla Manager Agent* API. It is mainly used by the *Scylla Manager*.
It consists mostly of the *rclone* server swagger definitions, but there are also a few agent specific definitions as well.

3. **scylla_v1** - describes general *Scylla* API. The swagger definitions come from [Scylla repository](https://github.com/scylladb/scylladb/tree/master/api),
and they are divided into per service files (e.g. [storage_service](https://github.com/scylladb/scylladb/blob/b158ca734603d62fa8e173a72e60866a4d8d3bc7/api/api-doc/storage_service.json#L5)).
Note that *Scylla* uses swagger *1.2*, and we use swagger *2.0* in Scylla Manager repository, so the swagger definitions needs to be adjusted accordingly.

4. **scylla_v2** - describes config related *Scylla* API. The swagger definitions [correspond to querying](https://github.com/scylladb/scylladb/blob/b158ca734603d62fa8e173a72e60866a4d8d3bc7/api/api-doc/config.json#L1)
*Scylla* node's *scylla.yaml* config file. Note that in some cases this API does not distinguish [unset and default values](https://github.com/scylladb/scylladb/issues/7206#issuecomment-689598343).
Loading

0 comments on commit 4fc93b5

Please sign in to comment.