Skip to content

fix(ci): enable OTLP export only when a collector is requested - #5348

Merged
krishicks merged 1 commit into
mainfrom
fix/5347-otlp-export-opt-in/krishicks
Nov 6, 2026
Merged

krishicks merged 1 commit into
mainfrom
fix/5347-otlp-export-opt-in/krishicks

Conversation

@krishicks

@krishicks krishicks commented Nov 6, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Kubernetes CI lanes pointed the gateway's OTLP export at a collector that only the local k3s workflow installs, so every kind run logged a BatchSpanProcessor.ExportError per batch. OTLP export is now opt-in everywhere: the Skaffold workflow layers a separate tracing values file, and the local gateway tasks export only when OPENSHELL_DEV_OTLP_ENDPOINT is set.

Related Issue

Closes #5347
Refs #3767

Changes

  • Move the collector endpoint and agent relay out of ci/values-skaffold.yaml into a new ci/values-local-tracing.yaml, which skaffold.yaml layers. The Kubernetes E2E harness keeps layering only values-skaffold.yaml, so its lanes render no OTLP endpoint.
  • Replace the 127.0.0.1:4317 probe in gateway:docker, gateway:podman, and gateway:vm with a shared append_dev_otlp_config helper that reads OPENSHELL_DEV_OTLP_ENDPOINT. gateway uses the same helper instead of always configuring the endpoint.
  • Update the helm-dev-environment and debug-openshell-cluster skills, and the VM driver README.

Testing

  • helm template with only values-skaffold.yaml renders no OTLP configuration. With values-local-tracing.yaml layered, it renders the same OTLP configuration as before.

  • shellcheck -x on the changed task scripts reports no new findings.

  • No Rust or Cargo files changed.

  • Checks appropriate to the affected code and behavior pass

  • Unit tests added/updated (if applicable)

  • E2E tests added/updated (if applicable)

Checklist

  • Follows Conventional Commits
  • Commits are signed off (DCO)

@github-actions

github-actions Bot commented Nov 6, 2026

Copy link
Copy Markdown

@github-actions

github-actions Bot commented Nov 6, 2026

Copy link
Copy Markdown

Compatibility review (advisory)

New or updated breaking changes; see the full report for all findings.

1. configuration — No explicit risk acceptance found

mise run gateway:docker and mise run gateway:podman previously enabled OTLP when localhost:4317 was listening; now trace export, OCSF export, and agent trace relay require OPENSHELL_DEV_OTLP_ENDPOINT.

  • Impact: Existing local-collector workflows stop delivering telemetry after restarting the gateway with the same command and environment.
  • Action: Preserve collector auto-detection when OPENSHELL_DEV_OTLP_ENDPOINT is unset for v0.1.8, retaining the variable as an optional override.
  • PR: fix(ci): enable OTLP export only when a collector is requested #5348
Review details
  • Execution: complete
  • Candidate: PR #5348 (b9781d608ac5ee5ce7002bfc4486334ee4ced85c)
  • Baseline: 53bf840cd22c47c7002d47af7e9f7292b19174a4 (53bf840cd22c47c7002d47af7e9f7292b19174a4)
  • Reviewed: rust-sdk, python-sdk, go-sdk, typescript-sdk, api-behavior, cli, configuration, policy, helm, state

Advisory review; publication gates are unchanged.

Branch check run

@TaylorMutch TaylorMutch self-assigned this Nov 6, 2026
Kubernetes E2E layered ci/values-skaffold.yaml, which pointed the gateway
at the openshell-collector service that only the local k3d workflow
installs. Kind lanes logged a BatchSpanProcessor.ExportError every batch.
The local gateway tasks probed 127.0.0.1:4317 instead, and the gateway
task configured the endpoint unconditionally.

Move the collector endpoint into ci/values-local-tracing.yaml, layered only
by skaffold.yaml, and have every local gateway task enable OTLP export only
when OPENSHELL_DEV_OTLP_ENDPOINT is set.

Closes #5347
Refs #3767

Signed-off-by: Kris Hicks <khicks@nvidia.com>
@krishicks
krishicks force-pushed the fix/5347-otlp-export-opt-in/krishicks branch from 77b18b0 to 6bada4c Compare November 6, 2026 20:57
@krishicks
krishicks enabled auto-merge November 6, 2026 20:59
@krishicks
krishicks added this pull request to the merge queue Nov 6, 2026
Merged via the queue into main with commit cb836ea Nov 6, 2026
85 of 87 checks passed
@krishicks
krishicks deleted the fix/5347-otlp-export-opt-in/krishicks branch November 6, 2026 21:38
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.

bug(ci): enable OTLP export only when a collector is requested

2 participants