Commit Graph

4 Commits (efea01cf03411a3b4a0e48cd8e343b1a947c46d2)

Author SHA1 Message Date
Jason Stirnaman 1dce052e56 fix(JS): Rename CommonJS scripts to .cjs extension, keep type: module as the project default. Update and fix ESLint configuration.
- Renames JavaScript files in flux-build-scripts and api-docs/openapi/plugins to .cjs file extension to declare them as CommonJS module syntax.
2025-05-19 11:34:42 -05:00
Jason Stirnaman ac4b1c53c8
feat(v3): Restructure API docs for v3 (#5408)
* v3 management API
Fixes #5397

- Adds an API reference doc for the  HTTP management API openapi spec (https://github.com/influxdata/granite/blob/main/openapi.yaml) (Cloud Dedicated only)
- Doesn't fetch changes for any specs except for the Management spec.
- Adds summaries and fixes descriptions in spec overrides.
- Removes versions in spec overrides.
- Adds configuration for generating API reference docs, Hugo frontmatter, setting the default API (for the [product]/api/ URL)
- Restructures `/api-docs` to better allow for multiple APIs (and customizations) per product
- Adds `[product]/api/v2/` docs URL for cloud products (currently set as the "default" API, `[product]/api`)
- Refactors `generate-api-docs` to remove specific conditions and use the new directory structure.
- Redocly update fixes some theme formatting issues

- Tested the following URLs:

   - http://localhost:1313/influxdb/v2/api/
   - http://localhost:1313/influxdb/v2/api/v1-compatibility/
   - http://localhost:1313/influxdb/cloud/api/
   - http://localhost:1313/influxdb/cloud/api/v2/
   - http://localhost:1313/influxdb/cloud-dedicated/api/
   - http://localhost:1313/influxdb/cloud-dedicated/api/v2/
   - http://localhost:1313/influxdb/cloud/api/v1-compatibility/
   - http://localhost:1313/influxdb/cloud-dedicated/api/v1-compatibility/
   - http://localhost:1313/influxdb/cloud-serverless/
   - http://localhost:1313/influxdb/cloud-serverless/api/v2/
   - http://localhost:1313/influxdb/cloud-serverless/api/v1-compatibility/
   - http://localhost:1313/influxdb/clustered/api/
   - http://localhost:1313/influxdb/clustered/api/v2/
   - http://localhost:1313/influxdb/clustered/api/v1-compatibility/

* fix(v3): Remove Management API from menu

* Update api-docs/cloud-dedicated/v2/content/info.yml

* show management api in nav, update nav names

---------

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
Co-authored-by: Scott Anderson <scott@influxdata.com>
2024-04-09 17:02:12 -06:00
Jason Stirnaman b100bbf256
Fix/api securityschemes (#3488)
* fix: oss and cloud auth. Add bearer scheme for OSS.

* chore: Add an openapi CLI decorator that replaces INFLUXDB_DOCS_URL 'shortcodes' with the correct URL in specs.

* fix: API authentication descriptions and schemes in /api/v2 and V1Compat. Remove QueryString and Basic auth schemes from /api/v2 and add them to V1Compat, along with Token auth. Hook up the replace-docs-url-shortcode which is primarily for V1Compat for now due to the way that contract is managed. Add tag groups to V1Compat.

* fix: add v1compat Info description. Comment out Bearer auth in OSS until it's available in Cloud.

* fix: add replace-shortcodes decorator. Fix v1-compat tag-groups. Fix spec titles.

* fix: restore BasicAuth scheme definition for the users operations that reference them. Still need examples for these.

* fix: remove 1.x BasicAuth references where they don't belong.

* chore: sync from openapi master.

* fix: use replace-shortcodes to replace full Docs URLs in the contracts with absolute local paths to avoid roundtrips. Improve v1compat titles.

* Update api-docs/cloud/swaggerV1Compat.yml

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* Update api-docs/cloud/swaggerV1Compat.yml

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* Update api-docs/cloud/swaggerV1Compat.yml

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* Update api-docs/cloud/swaggerV1Compat.yml

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

* Update api-docs/cloud/swaggerV1Compat.yml

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>

Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
2021-12-21 14:34:49 -06:00
Jason Stirnaman 2bddffb52b
API Ref docs processing (#3337)
* chore: API Reference Docs custom processing. Pulls contracts/ref files and applies custom content (tags, x-tagGroups, securitySchemes, info) before writing results to cloud/ref.yml and v2.0/ref.yml.
Rename source files from swagger.yml to ref.yml to avoid confusion and in case we need to bundle additional specs in the future.
Add an OpenAPI CLI docs-plugin with content and decorators.

* chore: update api-docs/README.md

* fix: add strip-version-prefix to remove /api/v2 added incorrectly to some paths during contract generation - also fixed in openapi repo so future contracts won't need this decorator. Fix server urls. Cleanup.

* chore: update cloud contract.
2021-11-03 14:18:02 -05:00