Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Jts/api uplift #5875

Draft
wants to merge 59 commits into
base: master
Choose a base branch
from
Draft

Jts/api uplift #5875

wants to merge 59 commits into from

Conversation

jstirnaman
Copy link
Contributor

Fork of api-uplift branch. Rebased onto master and 4314589.

Needs lots of fixes:

  • JavaScript
  • In ref.yml API specs, replace docs links in path.description fields with lists of links in x-influxdata-related-content
  • Adjust new API generator to new paths for ref.yml files.

peterbarnett03 and others added 30 commits February 25, 2025 12:07
- Adds basic support for core and enterprise in getswagger.sh
- Adds custom OpenAPI info for Core and Enterprise
- Validates as OpenAPI 3.0 (using Spectral)
    - operationId
    - tags
- Revises use of Legacy, v2
- TODO: need to check and validate in UI, adjust tags if nec.
- Add and remove components
- Update parameters
- Add examples
- Add tests for Core
… - prevents undefined GTM object errors in dev

- Stub Google Tag Manager in the test
- Adds InfluxDB 3 Core API reference
- Updates scripts
- Removes non-valid info.summary field from specs, replaces with description in metadata
- Simplifies frontmatter generation for HTML template
- Reorg of file structure to mirror the content structure.
- Moves OSS v2 into v2/v2/ref.yml to follow the same pattern as others
- Replaces isDefault API config field with specific aliases.
- Misc. fixes.
- Remove generated HTML files.
- Add a custom x-influxdata-short-description field that replaces the previous non-standard summary field used by Redocly.
- Double quote the title and description vars to preserve the entire value when passing them to the CLI
- Adds the widget script to template.hbs.
- Copies branding color and font styles from js/ask-ai.js
- Copies position and some sizes from the configuration docs.
- This will be replaced when the API uplift is completed and using the same layouts as the rest of the site.
…groups. Closes Remove tag groups from API ref docs that duplicate endpoints in the "All endpoints" tag group. #5868
- Fix broken links reported by the e2e link checker.
- Add an e2e test for checking internal and external links in API reference docs. Low effort, big win.
…n headings. Closes fix(api-refs): specify v2 in InfluxDB OSS headings #5866, Closes Flux docs: replace `/influxdb/latest` with `/influxdb/v2` #5864. Linting cleanup, removing terminal prompt from examples
- Adapts code from @jstirnaman's demo site to generate Hugo pages from OpenAPI paths in the InfluxDB spec files.
- Uses Rapidoc to render the OpenAPI path in a page--effectively treating each endpoint as a standalone API for faster loading.
- Run yarn install and then Executing: api-docs/getswagger.sh cloud-v2 -B
No URL was provided. I'll rebuild from the existing spec /Users/ja/Documents/github/docs-v2/api-docs/cloud/v2/ref.yml
10.8.2
Generating OpenAPI path files in static/openapi/influxdb-cloud-v2/paths....
Generating OpenAPI article data in data/article-data/influxdb/cloud-v2...
Executing: HUGO_DATAPAGES_DATA_PATH=data/article-data/influxdb/cloud-v2     HUGO_DATAPAGES_ELEMENT=articles     HUGO_DATAPAGES_TYPE=api     HUGO_DATAPAGES_CONTENT_PATH=content/influxdb/cloud/api/v2     node hugo-data-to-pages/hugo.js clean --force
Removing data-generated files...
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-authorizations
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-buckets
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-checks
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-dashboards
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-dbrps
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-delete
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-flags
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-labels
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-maps
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-me
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-notificationEndpoints
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-notificationRules
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-orgs
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-query
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-resources
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-scripts
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-setup
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-signin
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-signout
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-stacks
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-tasks
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-telegraf
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-telegrafs
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-templates
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-users
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-variables
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-write
Removed folder: ./content/influxdb/cloud/api/v2/api-v2
Removed folder: ./content/influxdb/cloud/api/v2/legacy-authorizations
Removed folder: ./content/influxdb/cloud/api/v2/ping
Removed folder: ./content/influxdb/cloud/api/v2/query
Removed folder: ./content/influxdb/cloud/api/v2/write
Done!
Executing: HUGO_DATAPAGES_DATA_PATH=data/article-data/influxdb/cloud-v2     HUGO_DATAPAGES_ELEMENT=articles     HUGO_DATAPAGES_TYPE=api     HUGO_DATAPAGES_CONTENT_PATH=content/influxdb/cloud/api/v2     node hugo-data-to-pages/hugo.js generate
Building data-generated files...
Created file: ./content/influxdb/cloud/api/v2/api-v2-authorizations/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-buckets/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-checks/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-dashboards/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-dbrps/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-delete/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-flags/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-labels/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-maps/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-me/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-notificationEndpoints/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-notificationRules/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-orgs/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-query/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-resources/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-scripts/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-setup/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-signin/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-signout/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-stacks/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-tasks/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-telegraf/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-telegrafs/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-templates/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-users/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-variables/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-write/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2/index.md
Created file: ./content/influxdb/cloud/api/v2/legacy-authorizations/index.md
Created file: ./content/influxdb/cloud/api/v2/ping/index.md
Created file: ./content/influxdb/cloud/api/v2/query/index.md
Created file: ./content/influxdb/cloud/api/v2/write/index.md
Done!
Executing: api-docs/getswagger.sh oss-v2 -B
No URL was provided. I'll rebuild from the existing spec /Users/ja/Documents/github/docs-v2/api-docs/v2/ref.yml
10.8.2
Generating OpenAPI path files in static/openapi/influxdb-oss-v2/paths....
Generating OpenAPI article data in data/article-data/influxdb/oss-v2...
Executing: HUGO_DATAPAGES_DATA_PATH=data/article-data/influxdb/oss-v2     HUGO_DATAPAGES_ELEMENT=articles     HUGO_DATAPAGES_TYPE=api     HUGO_DATAPAGES_CONTENT_PATH=content/influxdb/v2/api/v2     node hugo-data-to-pages/hugo.js clean --force
Removing data-generated files...
Removed folder: ./content/influxdb/v2/api/v2/api-v2-authorizations
Removed folder: ./content/influxdb/v2/api/v2/api-v2-backup
Removed folder: ./content/influxdb/v2/api/v2/api-v2-buckets
Removed folder: ./content/influxdb/v2/api/v2/api-v2-checks
Removed folder: ./content/influxdb/v2/api/v2/api-v2-config
Removed folder: ./content/influxdb/v2/api/v2/api-v2-dashboards
Removed folder: ./content/influxdb/v2/api/v2/api-v2-dbrps
Removed folder: ./content/influxdb/v2/api/v2/api-v2-delete
Removed folder: ./content/influxdb/v2/api/v2/api-v2-flags
Removed folder: ./content/influxdb/v2/api/v2/api-v2-labels
Removed folder: ./content/influxdb/v2/api/v2/api-v2-maps
Removed folder: ./content/influxdb/v2/api/v2/api-v2-me
Removed folder: ./content/influxdb/v2/api/v2/api-v2-notificationEndpoints
Removed folder: ./content/influxdb/v2/api/v2/api-v2-notificationRules
Removed folder: ./content/influxdb/v2/api/v2/api-v2-orgs
Removed folder: ./content/influxdb/v2/api/v2/api-v2-query
Removed folder: ./content/influxdb/v2/api/v2/api-v2-remotes
Removed folder: ./content/influxdb/v2/api/v2/api-v2-replications
Removed folder: ./content/influxdb/v2/api/v2/api-v2-resources
Removed folder: ./content/influxdb/v2/api/v2/api-v2-restore
Removed folder: ./content/influxdb/v2/api/v2/api-v2-scrapers
Removed folder: ./content/influxdb/v2/api/v2/api-v2-setup
Removed folder: ./content/influxdb/v2/api/v2/api-v2-signin
Removed folder: ./content/influxdb/v2/api/v2/api-v2-signout
Removed folder: ./content/influxdb/v2/api/v2/api-v2-sources
Removed folder: ./content/influxdb/v2/api/v2/api-v2-stacks
Removed folder: ./content/influxdb/v2/api/v2/api-v2-tasks
Removed folder: ./content/influxdb/v2/api/v2/api-v2-telegraf
Removed folder: ./content/influxdb/v2/api/v2/api-v2-telegrafs
Removed folder: ./content/influxdb/v2/api/v2/api-v2-templates
Removed folder: ./content/influxdb/v2/api/v2/api-v2-users
Removed folder: ./content/influxdb/v2/api/v2/api-v2-variables
Removed folder: ./content/influxdb/v2/api/v2/api-v2-write
Removed folder: ./content/influxdb/v2/api/v2/api-v2
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-all
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-allocs
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-block
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-cmdline
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-goroutine
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-heap
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-mutex
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-profile
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-threadcreate
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-trace
Removed folder: ./content/influxdb/v2/api/v2/health
Removed folder: ./content/influxdb/v2/api/v2/legacy-authorizations
Removed folder: ./content/influxdb/v2/api/v2/metrics
Removed folder: ./content/influxdb/v2/api/v2/ping
Removed folder: ./content/influxdb/v2/api/v2/query
Removed folder: ./content/influxdb/v2/api/v2/ready
Removed folder: ./content/influxdb/v2/api/v2/write
Done!
Executing: HUGO_DATAPAGES_DATA_PATH=data/article-data/influxdb/oss-v2     HUGO_DATAPAGES_ELEMENT=articles     HUGO_DATAPAGES_TYPE=api     HUGO_DATAPAGES_CONTENT_PATH=content/influxdb/v2/api/v2     node hugo-data-to-pages/hugo.js generate
Building data-generated files...
Created file: ./content/influxdb/v2/api/v2/api-v2-authorizations/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-backup/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-buckets/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-checks/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-config/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-dashboards/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-dbrps/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-delete/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-flags/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-labels/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-maps/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-me/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-notificationEndpoints/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-notificationRules/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-orgs/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-query/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-remotes/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-replications/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-resources/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-restore/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-scrapers/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-setup/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-signin/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-signout/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-sources/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-stacks/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-tasks/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-telegraf/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-telegrafs/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-templates/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-users/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-variables/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-write/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-all/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-allocs/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-block/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-cmdline/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-goroutine/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-heap/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-mutex/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-profile/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-threadcreate/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-trace/index.md
Created file: ./content/influxdb/v2/api/v2/health/index.md
Created file: ./content/influxdb/v2/api/v2/legacy-authorizations/index.md
Created file: ./content/influxdb/v2/api/v2/metrics/index.md
Created file: ./content/influxdb/v2/api/v2/ping/index.md
Created file: ./content/influxdb/v2/api/v2/query/index.md
Created file: ./content/influxdb/v2/api/v2/ready/index.md
Created file: ./content/influxdb/v2/api/v2/write/index.md
Done! to generate the paths, metadata, and pages.
- Replaces hugo-data-to-pages with forked repo that accepts a config object and uses a more recent version of js-yaml.
- Uses async to wait for scripts to complete.
…s and simplifying module and function names.
… directory.

No longer uses Hugo /data.
Removes dependency on the Hugo-data-to-pages script.
For each product endpoint, generate a page with the endpoint spec inside the frontmatter.
Writes endpoint specs into each page's frontmatter.
Assign a `type` property for API reference (OpenAPI) paths. For example, if the page structure is `content/influxdb/v2/api/v2/[OpenAPI path]`, then add `type: api_path` to the frontmatter and, if necessary, specify a layout: `layout: api_path`.
Renders the spec param JSON using Rapidoc.

TODO:
- Cleanup
- Create additional templates that process page data for nav, filtering, links, code samples, etc.
- Fix circular reference issues in specs that prevent generating a dereferenced JSON bundle (which could also help us our own custom UI...should we choose).
- Adapts code from @jstirnaman's demo site to generate Hugo pages from OpenAPI paths in the InfluxDB spec files.
- Uses Rapidoc to render the OpenAPI path in a page--effectively treating each endpoint as a standalone API for faster loading.
- Run yarn install and then Executing: api-docs/getswagger.sh cloud-v2 -B
No URL was provided. I'll rebuild from the existing spec /Users/ja/Documents/github/docs-v2/api-docs/cloud/v2/ref.yml
10.8.2
Generating OpenAPI path files in static/openapi/influxdb-cloud-v2/paths....
Generating OpenAPI article data in data/article-data/influxdb/cloud-v2...
Executing: HUGO_DATAPAGES_DATA_PATH=data/article-data/influxdb/cloud-v2     HUGO_DATAPAGES_ELEMENT=articles     HUGO_DATAPAGES_TYPE=api     HUGO_DATAPAGES_CONTENT_PATH=content/influxdb/cloud/api/v2     node hugo-data-to-pages/hugo.js clean --force
Removing data-generated files...
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-authorizations
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-buckets
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-checks
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-dashboards
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-dbrps
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-delete
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-flags
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-labels
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-maps
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-me
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-notificationEndpoints
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-notificationRules
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-orgs
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-query
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-resources
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-scripts
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-setup
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-signin
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-signout
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-stacks
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-tasks
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-telegraf
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-telegrafs
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-templates
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-users
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-variables
Removed folder: ./content/influxdb/cloud/api/v2/api-v2-write
Removed folder: ./content/influxdb/cloud/api/v2/api-v2
Removed folder: ./content/influxdb/cloud/api/v2/legacy-authorizations
Removed folder: ./content/influxdb/cloud/api/v2/ping
Removed folder: ./content/influxdb/cloud/api/v2/query
Removed folder: ./content/influxdb/cloud/api/v2/write
Done!
Executing: HUGO_DATAPAGES_DATA_PATH=data/article-data/influxdb/cloud-v2     HUGO_DATAPAGES_ELEMENT=articles     HUGO_DATAPAGES_TYPE=api     HUGO_DATAPAGES_CONTENT_PATH=content/influxdb/cloud/api/v2     node hugo-data-to-pages/hugo.js generate
Building data-generated files...
Created file: ./content/influxdb/cloud/api/v2/api-v2-authorizations/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-buckets/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-checks/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-dashboards/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-dbrps/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-delete/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-flags/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-labels/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-maps/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-me/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-notificationEndpoints/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-notificationRules/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-orgs/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-query/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-resources/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-scripts/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-setup/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-signin/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-signout/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-stacks/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-tasks/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-telegraf/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-telegrafs/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-templates/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-users/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-variables/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2-write/index.md
Created file: ./content/influxdb/cloud/api/v2/api-v2/index.md
Created file: ./content/influxdb/cloud/api/v2/legacy-authorizations/index.md
Created file: ./content/influxdb/cloud/api/v2/ping/index.md
Created file: ./content/influxdb/cloud/api/v2/query/index.md
Created file: ./content/influxdb/cloud/api/v2/write/index.md
Done!
Executing: api-docs/getswagger.sh oss-v2 -B
No URL was provided. I'll rebuild from the existing spec /Users/ja/Documents/github/docs-v2/api-docs/v2/ref.yml
10.8.2
Generating OpenAPI path files in static/openapi/influxdb-oss-v2/paths....
Generating OpenAPI article data in data/article-data/influxdb/oss-v2...
Executing: HUGO_DATAPAGES_DATA_PATH=data/article-data/influxdb/oss-v2     HUGO_DATAPAGES_ELEMENT=articles     HUGO_DATAPAGES_TYPE=api     HUGO_DATAPAGES_CONTENT_PATH=content/influxdb/v2/api/v2     node hugo-data-to-pages/hugo.js clean --force
Removing data-generated files...
Removed folder: ./content/influxdb/v2/api/v2/api-v2-authorizations
Removed folder: ./content/influxdb/v2/api/v2/api-v2-backup
Removed folder: ./content/influxdb/v2/api/v2/api-v2-buckets
Removed folder: ./content/influxdb/v2/api/v2/api-v2-checks
Removed folder: ./content/influxdb/v2/api/v2/api-v2-config
Removed folder: ./content/influxdb/v2/api/v2/api-v2-dashboards
Removed folder: ./content/influxdb/v2/api/v2/api-v2-dbrps
Removed folder: ./content/influxdb/v2/api/v2/api-v2-delete
Removed folder: ./content/influxdb/v2/api/v2/api-v2-flags
Removed folder: ./content/influxdb/v2/api/v2/api-v2-labels
Removed folder: ./content/influxdb/v2/api/v2/api-v2-maps
Removed folder: ./content/influxdb/v2/api/v2/api-v2-me
Removed folder: ./content/influxdb/v2/api/v2/api-v2-notificationEndpoints
Removed folder: ./content/influxdb/v2/api/v2/api-v2-notificationRules
Removed folder: ./content/influxdb/v2/api/v2/api-v2-orgs
Removed folder: ./content/influxdb/v2/api/v2/api-v2-query
Removed folder: ./content/influxdb/v2/api/v2/api-v2-remotes
Removed folder: ./content/influxdb/v2/api/v2/api-v2-replications
Removed folder: ./content/influxdb/v2/api/v2/api-v2-resources
Removed folder: ./content/influxdb/v2/api/v2/api-v2-restore
Removed folder: ./content/influxdb/v2/api/v2/api-v2-scrapers
Removed folder: ./content/influxdb/v2/api/v2/api-v2-setup
Removed folder: ./content/influxdb/v2/api/v2/api-v2-signin
Removed folder: ./content/influxdb/v2/api/v2/api-v2-signout
Removed folder: ./content/influxdb/v2/api/v2/api-v2-sources
Removed folder: ./content/influxdb/v2/api/v2/api-v2-stacks
Removed folder: ./content/influxdb/v2/api/v2/api-v2-tasks
Removed folder: ./content/influxdb/v2/api/v2/api-v2-telegraf
Removed folder: ./content/influxdb/v2/api/v2/api-v2-telegrafs
Removed folder: ./content/influxdb/v2/api/v2/api-v2-templates
Removed folder: ./content/influxdb/v2/api/v2/api-v2-users
Removed folder: ./content/influxdb/v2/api/v2/api-v2-variables
Removed folder: ./content/influxdb/v2/api/v2/api-v2-write
Removed folder: ./content/influxdb/v2/api/v2/api-v2
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-all
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-allocs
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-block
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-cmdline
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-goroutine
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-heap
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-mutex
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-profile
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-threadcreate
Removed folder: ./content/influxdb/v2/api/v2/debug-pprof-trace
Removed folder: ./content/influxdb/v2/api/v2/health
Removed folder: ./content/influxdb/v2/api/v2/legacy-authorizations
Removed folder: ./content/influxdb/v2/api/v2/metrics
Removed folder: ./content/influxdb/v2/api/v2/ping
Removed folder: ./content/influxdb/v2/api/v2/query
Removed folder: ./content/influxdb/v2/api/v2/ready
Removed folder: ./content/influxdb/v2/api/v2/write
Done!
Executing: HUGO_DATAPAGES_DATA_PATH=data/article-data/influxdb/oss-v2     HUGO_DATAPAGES_ELEMENT=articles     HUGO_DATAPAGES_TYPE=api     HUGO_DATAPAGES_CONTENT_PATH=content/influxdb/v2/api/v2     node hugo-data-to-pages/hugo.js generate
Building data-generated files...
Created file: ./content/influxdb/v2/api/v2/api-v2-authorizations/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-backup/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-buckets/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-checks/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-config/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-dashboards/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-dbrps/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-delete/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-flags/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-labels/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-maps/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-me/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-notificationEndpoints/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-notificationRules/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-orgs/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-query/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-remotes/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-replications/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-resources/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-restore/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-scrapers/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-setup/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-signin/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-signout/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-sources/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-stacks/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-tasks/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-telegraf/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-telegrafs/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-templates/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-users/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-variables/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2-write/index.md
Created file: ./content/influxdb/v2/api/v2/api-v2/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-all/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-allocs/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-block/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-cmdline/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-goroutine/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-heap/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-mutex/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-profile/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-threadcreate/index.md
Created file: ./content/influxdb/v2/api/v2/debug-pprof-trace/index.md
Created file: ./content/influxdb/v2/api/v2/health/index.md
Created file: ./content/influxdb/v2/api/v2/legacy-authorizations/index.md
Created file: ./content/influxdb/v2/api/v2/metrics/index.md
Created file: ./content/influxdb/v2/api/v2/ping/index.md
Created file: ./content/influxdb/v2/api/v2/query/index.md
Created file: ./content/influxdb/v2/api/v2/ready/index.md
Created file: ./content/influxdb/v2/api/v2/write/index.md
Done! to generate the paths, metadata, and pages.
- Replaces hugo-data-to-pages with forked repo that accepts a config object and uses a more recent version of js-yaml.
- Uses async to wait for scripts to complete.
…s and simplifying module and function names.
… directory.

No longer uses Hugo /data.
Removes dependency on the Hugo-data-to-pages script.
For each product endpoint, generate a page with the endpoint spec inside the frontmatter.
Writes endpoint specs into each page's frontmatter.
Assign a `type` property for API reference (OpenAPI) paths. For example, if the page structure is `content/influxdb/v2/api/v2/[OpenAPI path]`, then add `type: api_path` to the frontmatter and, if necessary, specify a layout: `layout: api_path`.
Renders the spec param JSON using Rapidoc.

TODO:
- Cleanup
- Create additional templates that process page data for nav, filtering, links, code samples, etc.
- Fix circular reference issues in specs that prevent generating a dereferenced JSON bundle (which could also help us our own custom UI...should we choose).
@jstirnaman
Copy link
Contributor Author

@MeelahMe Here's an updated branch for the API uplift. I rebased it onto to master and the Core and Enterprise API docs branches and resolved conflicts, but it still has lots of errors and changes that need to be reconciled.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants