mirror of
https://github.com/edgelesssys/constellation.git
synced 2024-12-24 23:19:39 -05:00
rfc: specify cli version api (#1175)
* add cli compatibility api rfc * fix typos * rewording
This commit is contained in:
parent
f70447bf7d
commit
c3347f2eb5
@ -32,6 +32,7 @@ There may be more API groups in the future (e.g. `cli`)
|
||||
- [`/constellation/v1/ref/<ref>/stream/<stream>/<version>/image/csp/<csp>/measurements.json`](image-api.md)
|
||||
- [`/constellation/v1/ref/<ref>/stream/<stream>/<version>/image/csp/<csp>/measurements.json.sig`](image-api.md)
|
||||
- [`/constellation/v1/ref/<ref>/stream/<stream>/<version>/image/csp/<csp>/image.raw`](image-api.md)
|
||||
- [`/constellation/v1/ref/<ref>/stream/<stream>/<version>/cli/info.json`](cli-api.md#cli-lookup-table)
|
||||
|
||||
## API path identifiers `ref`, `stream` and `version`
|
||||
|
||||
@ -56,7 +57,7 @@ and [pseudo-versions](https://go.dev/ref/mod#pseudo-versions).
|
||||
|
||||
The [pesudo-version tool](../hack/pseudo-version) can generate a valid pseudo-version for your current head.
|
||||
|
||||
### Consisten API path prefix of `ref` and `stream`
|
||||
### Consistent API path prefix of `ref` and `stream`
|
||||
|
||||
For API calls, paths will always start with `ref` and `stream`:
|
||||
|
||||
|
32
rfc/cli-api.md
Normal file
32
rfc/cli-api.md
Normal file
@ -0,0 +1,32 @@
|
||||
# CLI compatibility information
|
||||
|
||||
The CLI API provides information about the compatibility of the Constellation CLI and other components of the Constellation ecosystem such as Kubernetes versions.
|
||||
|
||||
## CLI API Endpoints
|
||||
|
||||
The build pipeline produces artifacts for compatibility information that are uploaded to S3 and can be accessed via HTTP.
|
||||
The artifacts are organized in a directory structure that allows to look up the compatibility for a given Constellation version.
|
||||
|
||||
The following HTTP endpoints are available:
|
||||
|
||||
- `GET /constellation/v1/ref/<REF>/stream/<STREAM>/<VERSION>/cli/`
|
||||
- [`info.json` returns the CLI compatibility information artifact for the given Constellation version.](#cli-lookup-table)
|
||||
|
||||
## CLI information artifact
|
||||
|
||||
The CLI compatibility information artifact is a JSON file that maps the image name consisting of `ref`, `stream` and `version` to the corresponding CLI version and it's compatibility information:
|
||||
|
||||
```
|
||||
/constellation/v1/ref/<REF>/stream/<STREAM>/<VERSION>/cli/info.json
|
||||
```
|
||||
|
||||
```json
|
||||
{
|
||||
"version": "<VERSION>",
|
||||
"ref": "<REF>",
|
||||
"stream": "<STREAM>",
|
||||
"kubernetes": ["v1.1.23", "v1.1.24", "v1.1.25"]
|
||||
}
|
||||
```
|
||||
|
||||
This shows that the Constellation CLI version `<VERSION>` is compatible with Kubernetes versions `v1.1.23`, `v1.1.24` and `v1.1.25`.
|
@ -1,6 +1,6 @@
|
||||
# OS image & measurement discovery
|
||||
|
||||
The Constellation OS image build pipeline generates a set of images using a chosen commit of the Constellation monorepo and and a desired release version number.
|
||||
The Constellation OS image build pipeline generates a set of images using a chosen commit of the Constellation monorepo and a desired release version number.
|
||||
|
||||
```mermaid
|
||||
graph LR
|
||||
|
Loading…
Reference in New Issue
Block a user