docs-v2/helper-scripts
Jason Stirnaman 33a2d5ce63 Refactored the release notes generator
script with the following improvements:

  1. Renamed output formats:
    - standard → integrated: All repositories' changes are
  integrated together
    - core-enterprise → separated: Primary repository
  first, then secondary repositories
  2. Generalized the separated format:
    - Configurable primary repository (by name or index)
    - Customizable section labels and headers
    - Flexible template system for different products
  3. Enhanced configuration system:
    - Per-repository PR link settings
    - Full template customization for separated format
    - Support for configuration files
  4. Created example configurations:
    - config/influxdb3-core-enterprise.json: For InfluxDB 3
   Core/Enterprise releases
    - config/influxdb-v2.json: For InfluxDB v2 releases
    - config/influxdb3-clustered.json: For Clustered
  (Kubernetes operator) releases
  5. Updated documentation:
    - Explained both output formats clearly
    - Added configuration options documentation
    - Included example configurations usage

  The script now provides a flexible system that can handle
   various release note formats for different InfluxData
  products while maintaining the specific requirements like
   excluding PR links for influxdb_pro but including them
  for influxdb.
2025-07-07 12:13:37 -05:00
..
cloud-serverless chore(ci): Automation scripts to compare influxdb3 CLI help to reference documentation and generate an audit report, runs influxdb3 core and enterprise using Docker, improves compose.yaml, restructures helper-scripts for different versions 2025-07-07 12:13:36 -05:00
common Refactored the release notes generator 2025-07-07 12:13:37 -05:00
influxdb3-distributed chore(ci): Automation scripts to compare influxdb3 CLI help to reference documentation and generate an audit report, runs influxdb3 core and enterprise using Docker, improves compose.yaml, restructures helper-scripts for different versions 2025-07-07 12:13:36 -05:00
influxdb3-monolith chore(ci): Cleanup JS 2025-07-07 12:13:36 -05:00
README.md chore(ci): Automation scripts to compare influxdb3 CLI help to reference documentation and generate an audit report, runs influxdb3 core and enterprise using Docker, improves compose.yaml, restructures helper-scripts for different versions 2025-07-07 12:13:36 -05:00

README.md

InfluxData Documentation Helper Scripts

This directory contains scripts to assist with InfluxDB documentation workflows, including release notes generation, CLI/API documentation auditing, and version management.

Directory Structure

helper-scripts/
├── common/                    # Shared scripts used across all products
├── influxdb3-monolith/       # Scripts for InfluxDB 3 Core & Enterprise
├── influxdb3-distributed/    # Scripts for InfluxDB 3 Clustered & Cloud Dedicated
├── cloud-serverless/         # Scripts for InfluxDB Cloud Serverless
└── output/                   # Generated outputs from all scripts

Product Categories

InfluxDB 3 Monolith

  • Products: InfluxDB 3 Core, InfluxDB 3 Enterprise
  • Deployment: Single binary deployment
  • Scripts Location: influxdb3-monolith/

InfluxDB 3 Distributed

  • Products: InfluxDB 3 Clustered, InfluxDB 3 Cloud Dedicated
  • Deployment: Distributed/Kubernetes deployment
  • Scripts Location: influxdb3-distributed/

Cloud Serverless

  • Product: InfluxDB Cloud Serverless
  • Deployment: Fully managed cloud service
  • Scripts Location: cloud-serverless/

Common Scripts

common/generate-release-notes.sh

Generates release notes by analyzing git commits across multiple repositories.

Usage:

./common/generate-release-notes.sh [--no-fetch] [--pull] <from_version> <to_version> <primary_repo_path> [additional_repo_paths...]

Example:

./common/generate-release-notes.sh v3.1.0 v3.2.0 ~/repos/influxdb ~/repos/influxdb_iox

common/update-product-version.sh

Updates product version numbers in data/products.yml and related documentation files.

Usage:

./common/update-product-version.sh --product <product> --version <version>

Example:

./common/update-product-version.sh --product core --version 3.2.1

Product-Specific Scripts

InfluxDB 3 Monolith (Core & Enterprise)

See influxdb3-monolith/README.md for detailed documentation.

Key Scripts:

  • audit-cli-documentation.sh - Audits CLI commands against existing documentation
  • setup-auth-tokens.sh - Sets up authentication tokens for local containers

InfluxDB 3 Distributed (Clustered & Cloud Dedicated)

See influxdb3-distributed/README.md for detailed documentation.

Key Scripts:

  • clustered-release-artifacts.sh - Downloads release artifacts for Clustered releases

Output Directory

All scripts write their outputs to organized subdirectories:

output/
├── release-notes/      # Generated release notes
├── cli-audit/         # CLI documentation audit reports
├── api-audit/         # API documentation audit reports
└── artifacts/         # Downloaded release artifacts

GitHub Workflow Integration

These scripts are integrated with GitHub Actions workflows:

  • Workflow: .github/workflows/prepare-release.yml
  • Uses: generate-release-notes.sh, update-product-version.sh

Quick Start

  1. Clone the repository

    git clone https://github.com/influxdata/docs-v2.git
    cd docs-v2/helper-scripts
    
  2. Make scripts executable

    find . -name "*.sh" -type f -exec chmod +x {} \;
    
  3. Run a script

    # Generate release notes
    ./common/generate-release-notes.sh v3.1.0 v3.2.0 ~/repos/influxdb
    
    # Audit CLI documentation
    ./influxdb3-monolith/audit-cli-documentation.sh core local
    

Contributing

When adding new scripts:

  1. Place in the appropriate product directory
  2. Follow naming conventions (lowercase with hyphens)
  3. Include comprehensive help text and documentation
  4. Update the relevant README files
  5. Test with all applicable products
  6. Ensure outputs go to the output/ directory

Archived Scripts

Deprecated scripts are moved to archive/ subdirectories. These scripts are kept for reference but should not be used in active workflows.