Skip to content

chore(release): sync website docs on each release - #54

Merged
mmanciop merged 12 commits into
mainfrom
docs/website-sync
Aug 7, 2026
Merged

chore(release): sync website docs on each release#54
mmanciop merged 12 commits into
mainfrom
docs/website-sync

Conversation

@mmanciop

@mmanciop mmanciop commented Aug 7, 2026

Copy link
Copy Markdown
Member

Adds a sync-docs job to the release pipeline that calls the existing sync-docs.yml reusable workflow with dry-run: false once the build job succeeds.

The job runs in parallel with index and publish-pypi, so it does not add to the critical path. It opens a PR on the website repository with the updated docs — a human still reviews and merges.

Test plan

  • Verify the next release run includes a sync-docs job in the Actions UI
  • Confirm the job opens a PR on the website repository

mmanciop and others added 11 commits August 5, 2026 12:54
Adds seven Markdown documentation pages covering the distribution's key
topics (overview, getting started, configuration, auto-instrumentation,
resource detection, Kubernetes injection, and OTLP exporters), along
with the GitHub Actions workflow and transformations.yaml that sync
them to the Dash0 website via dash0hq/sync-docs-action.

Also adds CLAUDE.md with agentic maintenance instructions that describe
which source files are authoritative for each doc page, when to update
them, and how to keep the transformations.yaml in sync.
…ture

Updates the sync-docs-action nav block so the generated python/nav.json
uses parentPath "Dash0 Distributions" (which is now established by the
foundational distributions/nav.json in the website) and title "Python"
rather than "Distributions". This keeps distribution-specific nav.json
files focused only on their own pages.
…nsformation

Move the relative-link rewrite off the single kubernetes-injection.md entry
and into the common section so every current and future doc cross-reference
is handled by one mechanism. Uses required: false because the common block
runs against every file and most have no cross-reference to rewrite.
CLAUDE.md forbids em-dashes in the website docs. Replace the paired
em-dashes in overview.md and kubernetes-injection.md with commas (splitting
overview's opening into two sentences), and switch the excluded-package list
in auto-instrumentation.md to colon separators. Table default-column cells in
configuration.md are left as-is (placeholder, not prose).
The mixed-protocol endpoint rewriting was documented in both configuration.md
and exporters.md. Per CLAUDE.md's source-of-truth mapping, port-rewriting
logic belongs to exporters.md, so drop the duplicate here. The 'custom ports
are never rewritten' behavior remains noted in the OTEL_EXPORTER_OTLP_<SIGNAL>_ENDPOINT
table row.
The runnable send-to-Dash0 snippet was identical to the one in
getting-started.md. Per CLAUDE.md, quick-start commands belong in
getting-started.md, so remove the copy here. The header semantics remain
documented in configuration.md's OTEL_EXPORTER_OTLP_HEADERS row.
The sync-docs-action coverage check failed because docs/brainstorms/
and docs/plans/ match coverage.include but have no files: entry. These
are internal planning docs, not website content, so list them under
coverage.ignore (exact source-relative paths, as the action requires).
The "This page is auto-generated from …" note was visible to readers on
the website and felt noise rather than signal. Remove the prepend
transformation so synced pages open directly with their content.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
…or docs

auto-instrumentation.md:
- Wrap every library table in <div class="two-col-lib-table"> so the
  Library column is fixed at 200 px and Instrumentation package takes
  the remaining width (requires matching CSS in the website)
- Turn every instrumentation package name into a PyPI link
- Link propagators and excluded packages (opentelemetry-propagator-aws-xray,
  opentelemetry-propagator-b3, opentelemetry-exporter-prometheus, etc.)

exporters.md:
- Link dash0-opentelemetry-pyproto, the two pyproto exporter packages,
  and the upstream opentelemetry-exporter-otlp-proto-{http,grpc} packages

resource-detection.md:
- Add note after the Kubernetes detector that other k8s.* attributes
  (namespace, node, deployment) require the k8sattributesprocessor and
  link to the Dash0 Operator and best-practices guide
- Rewrite "Using detectors explicitly": clarify that OTEL_EXPERIMENTAL_
  RESOURCE_DETECTORS is only needed with OTEL_CONFIG_FILE declarative
  config, explain that the SDK always appends service_instance + otel
  so built-in attributes are never displaced, and that all three Dash0
  detectors must be listed explicitly in the declarative config path

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Adds a sync-docs job that calls the existing sync-docs.yml reusable
workflow with dry-run: false once the build job succeeds, running in
parallel with index and publish-pypi.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
@mmanciop
mmanciop requested a review from a team as a code owner August 7, 2026 07:52
@mmanciop
mmanciop marked this pull request as draft August 7, 2026 07:53
@mmanciop mmanciop changed the title release: sync website docs on each release chore(release): sync website docs on each release Aug 7, 2026
@mmanciop
mmanciop marked this pull request as ready for review August 7, 2026 07:56
@mmanciop
mmanciop merged commit 3598644 into main Aug 7, 2026
9 checks passed
@mmanciop
mmanciop deleted the docs/website-sync branch August 7, 2026 07:57
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