feat(clustered): add missing Management API reference (unlike Cloud Dedicated) (Closes #5838)

- Retrieve Graphite API spec for Clustered
- Remove ACCOUNT_ID and CLUSTER_ID references and requirements not used for Clustered
pull/5944/head
Jason Stirnaman 2025-03-31 16:01:50 -05:00
parent 49355acece
commit e4bed73904
8 changed files with 1787 additions and 7 deletions

View File

@ -62,7 +62,7 @@ function showHelp {
subcommand=$1
case "$subcommand" in
cloud-dedicated-v2|cloud-dedicated-management|cloud-serverless-v2|clustered-v2|cloud-v2|v2|v1-compat|core-v3|enterprise-v3|all)
cloud-dedicated-v2|cloud-dedicated-management|cloud-serverless-v2|clustered-management|clustered-v2|cloud-v2|v2|v1-compat|core-v3|enterprise-v3|all)
product=$1
shift
@ -187,6 +187,22 @@ function updateCloudServerlessV2 {
postProcess $outFile 'influxdb3/cloud-serverless/.config.yml' v2@2
}
function updateClusteredManagement {
outFile="influxdb3/clustered/management/openapi.yml"
if [[ -z "$baseUrl" ]];
then
echo "Using existing $outFile"
else
# Clone influxdata/granite and fetch the latest openapi.yaml file.
echo "Fetching the latest openapi.yaml file from influxdata/granite"
tmp_dir=$(mktemp -d)
git clone --depth 1 --branch main https://github.com/influxdata/granite.git "$tmp_dir"
cp "$tmp_dir/openapi.yaml" "$outFile"
rm -rf "$tmp_dir"
fi
postProcess $outFile 'influxdb3/clustered/.config.yml' management@0
}
function updateClusteredV2 {
outFile="influxdb3/clustered/v2/ref.yml"
if [[ -z "$baseUrl" ]];
@ -278,6 +294,9 @@ then
elif [ "$product" = "cloud-serverless-v2" ];
then
updateCloudServerlessV2
elif [ "$product" = "clustered-management" ];
then
updateClusteredManagement
elif [ "$product" = "clustered-v2" ];
then
updateClusteredV2
@ -305,6 +324,6 @@ then
updateOSSV2
updateV1Compat
else
echo "Provide a product argument: cloud-v2, cloud-serverless-v2, cloud-dedicated-v2, cloud-dedicated-management, clustered-v2, core-v3, enterprise-v3, v2, v1-compat, or all."
echo "Provide a product argument: cloud-v2, cloud-serverless-v2, cloud-dedicated-v2, cloud-dedicated-management, clustered-management, clustered-v2, core-v3, enterprise-v3, v2, v1-compat, or all."
showHelp
fi

View File

@ -1,6 +1,6 @@
- name: Using the Management API
tags:
- Authentication
- Examples
- Quickstart
- name: All endpoints
tags: []

View File

@ -44,7 +44,7 @@ tags:
description: Manage database read/write tokens for a cluster
- name: Databases
description: Manage databases for a cluster
- name: Example
- name: Quickstart
x-traitTag: true
description: |
The following example script shows how to use `curl` to make database and token management requests:
@ -609,7 +609,7 @@ paths:
maxTables: 300
maxColumnsPerTable: 150
retentionPeriod: 600000000000
maxTablsOnly:
maxTablesOnly:
summary: Update Max Tables Only
value:
maxTables: 300
@ -660,7 +660,7 @@ paths:
maxTables: 300
maxColumnsPerTable: 150
retentionPeriod: 600000000000
maxTablsOnly:
maxTablesOnly:
summary: Update Max Tables Only
value:
accountId: 11111111-1111-4111-8111-111111111111
@ -1974,7 +1974,7 @@ x-tagGroups:
- name: Using the Management API
tags:
- Authentication
- Examples
- Quickstart
- name: All endpoints
tags:
- Database tokens

View File

@ -6,6 +6,8 @@ extends:
x-influxdata-product-name: InfluxDB 3 Clustered
apis:
management@0:
root: management/openapi.yml
v2@2:
root: v2/ref.yml
x-influxdata-docs-aliases:

View File

@ -0,0 +1,15 @@
title: InfluxDB 3 Clustered Management API
x-influxdata-short-title: Management API
description: |
The Management API for InfluxDB 3 Clustered provides a programmatic interface for managing an InfluxDB 3 cluster.
The Management API lets you integrate functions such as creating and managing databases, permissions, and tokens into your workflow or application.
This documentation is generated from the
InfluxDB 3 Management API OpenAPI specification.
license:
name: MIT
url: 'https://opensource.org/licenses/MIT'
contact:
name: InfluxData
url: https://www.influxdata.com
email: support@influxdata.com

View File

@ -0,0 +1,8 @@
- url: 'https://{baseurl}/api/v0'
description: InfluxDB 3 Clustered Management API URL
variables:
baseurl:
enum:
- 'console.influxdata.com'
default: 'console.influxdata.com'
description: InfluxDB 3 Clustered Console URL

View File

@ -0,0 +1,6 @@
- name: Using the Management API
tags:
- Authentication
- Quickstart
- name: All endpoints
tags: []

File diff suppressed because it is too large Load Diff