Commit Graph

9 Commits (0c2f9e8dbcebb171a8f44cd3433a59d5e5ff6601)

Author SHA1 Message Date
Jason Stirnaman a32b566887
test(influxdb3): Improve InfluxDB 3 Core and Enterprise Docker services (#6750)
* test(influxdb3): Improve InfluxDB 3 Core and Enterprise Docker services

Improve Docker Compose services and initialization script for testing InfluxDB 3 Core and Enterprise endpoints.

compose.yaml changes:
- Add influxdb3-core service with per-worktree data isolation
- Add influxdb3-core-noauth service for endpoint testing without auth
- Add influxdb3-enterprise service with trial license configuration
- Fix env_file handling (use optional path, remove variable override)
- Add detailed usage comments for each service

New files:
- test/scripts/init-influxdb3.sh: Helper script to initialize services,
  create directories, and validate configuration

- Enterprise configuration uses shared data at ~/influxdata-docs/.influxdb3/
to persist license and data across worktrees.

- .claude/skills/influxdb3-test-setup/SKILL.md. It covers:

  1. Architecture overview - Shows the directory structure for shared vs per-worktree data
  2. Quick reference - Common commands table
  3. Setup workflows - Core only, Enterprise only, or both
  4. Worktree-specific databases - How to create isolated databases named after the worktree
  5. Test environment configuration - Setting up .env.test files for code block tests
  6. Troubleshooting - Common issues (license, auth, ports)
  7. Service comparison - Core vs Enterprise differences

  The skill references the init script but keeps database creation as a separate workflow step, allowing flexibility for different testing scenarios.

* docs(copilot): Document influxdb3-test-setup skill in Copilot instructions (#6751)

* Initial plan

* docs(copilot): Add influxdb3-test-setup skill documentation to instructions

- Add InfluxDB 3 Test Setup subsection under Testing section with quick reference commands
- Add Skills section under Specialized Instructions with all available skills
- Document influxdb3-test-setup skill alongside existing skills (cypress-e2e-testing, docs-cli-workflow, hugo-template-dev)
- Include links to skill files and brief descriptions for discoverability

Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>

* chore(ci): Refactor InfluxDB 3 token handling to use JSON secrets

- Store Core and Enterprise tokens as JSON files with metadata
- Update SKILL.md instructions for jq-based token extraction
- Use Docker secrets for secure token mounting in compose.yaml
- Update init-influxdb3.sh to generate JSON token files
- Refactor compose.yaml to mount token files as secrets, not binds
- Standardize API examples and environment setup for new token format

* docs(influxdb3): Update token documentation for Docker Compose and CI/CD (#6756)

- Add 'description' field to offline admin token schema alongside 'expiry_millis'
- Add new section for Docker Compose with preconfigured admin tokens
- Document Docker secrets for secure token management
- Add CI/CD setup instructions using environment variables
- Standardize on INFLUXDB3_AUTH_TOKEN environment variable

Both 'description' and 'expiry_millis' are optional fields supported
by the InfluxDB 3 server when reading preconfigured token files.

* Revert "docs(influxdb3): Update token documentation for Docker Compose and CI…" (#6757)

This reverts commit 5c786ac2fd.

---------

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
2026-01-20 17:17:36 -06:00
Jason Stirnaman 3d4f78f5c4 fix(cloudv2): Doesn't support environment references in templates 2025-03-14 18:11:16 -05:00
Jason Stirnaman 4403dd9a18 fix: LInks and headings. Replace `latest` with `v2`. Specify OSS v2 in 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 2025-02-27 17:50:16 -06:00
Jason Stirnaman 7e65f611b7 fix(oss): Update TLS example using openssl and including Subject Alternative Name (SAN)
- Example uses Subject Alternative Name extension required by modern clients.
- Updated example is more verbose, but should work cross-platform.
- Added troubleshooting steps.
- Passes tests.
- Reformatted to headings and remove list nesting.
2024-09-24 16:58:53 -05:00
Jason Stirnaman ed0586cd13 fix(v2): API nav items:
- Fixes sidebar navigation for API pages, moving the v1-compatibility Hugo page into Develop with the API.
- Makes titles consistent for API reference docs.
- Disables linkify autolinking of URLs and email addresses to prevent autolinking example email addresses (I audited content to make sure we don't rely on the autolinking behavior; we use explicit HTML/MD syntax for links)
- Uses standard placeholders and adds test setup for v1-compat write and query.
- Clean up Markdown
- Adds home-sensor-data.lp to Downloads (thought it was already there)
2024-09-18 10:18:17 -05:00
Jason Stirnaman df39d7cd86 chore(telegraf): Update and improve Telegraf install instructions
- Updates Telegraf install instructions, adds more info to promote verifying downloads.
- Adds setup for tests.
- Makes tests pass in install and configuration docs.
- Adds Vale.sh exception to allow duration values inside code blocks.
- Adds Dockerfiles for convenience to test install procedures in CentOS and Ubuntu.
- Clarifies and fixes config file handling and specifying input and output plugins.
2024-08-26 16:32:16 -05:00
Jason Stirnaman 67e4084cf0 chore(ci): substitute v2 placeholders for tests, move setup to run-tests, fix env variables and broken use of parse_yaml 2024-08-07 13:58:43 -05:00
Jason Stirnaman 11bc7d5168 fix(v2): http-write-timeout
- Fix the http-write-timeout definition, which should be similar to https://pkg.go.dev/net/http#Server.WriteTimeout
- Add a Vale spelling config for v2 server options
- Add influxdb to the test container packages (for testing service influxdb...)
- Add Dockerfile config and test setup for testing some InfluxDB startup config options (using influxd)
2024-07-30 18:18:26 -05:00
Jason Stirnaman 37a7a7c6e7 chore(ci): Improve pre-commit hook, test harness, and linter
- Pre-commit hook:
       - Redo test harness so commands can run in parallel
       - Cleanup Vale command args
       - Replace lint-staged and husky with Lefthook.
    - Pre-push hook:
       - Scan for package vulnerabilities
    - Tests
      - Run tests on demand, in parallel, or debugged using docker compose up, run, exec, etc.
      - Each test container (service) runs the prepare-content script before running tests.
      - Return to using Python instead of Docker to provide environment variables so they don't get exposed in Docker inspect.
      - Bind mount influxctl config.toml and .env.test files
      - Bind mount scripts for faster builds while iterating on test scripts.
    - Vale:
      - Override Acronyms style def--ignore acronym if it's linked.
2024-07-23 15:08:28 -05:00