Skip to content

Refactor spec/semconv integration workflows: extract pick-branch helper#9682

Merged
chalin merged 2 commits intoopen-telemetry:mainfrom
chalin:chalin-m24-fix-spec-upd-action-2026-0418
Apr 20, 2026
Merged

Refactor spec/semconv integration workflows: extract pick-branch helper#9682
chalin merged 2 commits intoopen-telemetry:mainfrom
chalin:chalin-m24-fix-spec-upd-action-2026-0418

Conversation

@chalin
Copy link
Copy Markdown
Contributor

@chalin chalin commented Apr 18, 2026

  • Fixes Update spec action is failing / not working / brittle #8761
  • Extracts the inline bash that picks the next integration version into a shared, testable Node helper at scripts/gh/specs/pick-branch/.
  • Selects the upstream spec via --spec=otel|semconv; both update-spec-integration-branch.yml and update-semconv-integration-branch.yml now call the same helper.
  • Auto-selects dry-run vs write mode based on GITHUB_ACTIONS; flags --dry-run / --no-dry-run override. Prints a [mode] banner explaining its choice and the picked VERSION/BRANCH.
  • Opens a deduplicated tracking issue (label <slug>-integration-warning) when the helper detects problems such as stale integration branches; adds issues: write permission to both workflows.
  • Aligns the semconv workflow with the spec workflow by adding an env: { REPO, ABBR } block and using ${{ env.REPO }}/${{ env.ABBR }} in the submodule and PR-creation steps.
  • Renames the workflow step from "Set environment variables" to "Pick integration branch".
  • Adds 78 unit tests across version, format, issue, and cli-args test files; covers the version pipeline, output formatting, issue dedup/creation, and CLI argument parsing.
  • Documents the setup under content/en/site/build/ci-workflows.md (Comms-SIG perspective) and adds release-time guidance for spec / semconv SIG maintainers under content/en/docs/contributing/sig-practices.md.
  • Drive-by: promotes "Merging PRs" to a top-level heading in sig-practices.md, adds linkTitle: PR checks & tests to pr-checks.md.
  • Co-created and co/self-reviewed with Opus 4.7, and Composer 2

/cc @vitorvasc @carlosalberto

Preview:

@chalin chalin requested a review from a team as a code owner April 18, 2026 17:04
@otelbot-docs otelbot-docs bot requested a review from a team April 18, 2026 17:04
@github-actions github-actions bot added the CI/infra Repo CI & infrastructure label Apr 18, 2026
@otelbot-docs otelbot-docs bot added the missing:docs-approval Co-owning SIG has provided approval, PR needs approval from docs maintainer label Apr 18, 2026
export PR=<ID OF THE PR>; gh pr checks ${PR} --watch && gh pr merge ${PR} --squash
```

## Specification PRs and integration branches {#spec-integration-branches}
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@carlosalberto and @open-telemetry/specs-approvers, this is a writeup of what to do before publishing a release. Is this clear & helpful? See the section for "Spec / semconv SIG maintainers". Feedback welcome. For a preview, see https://deploy-preview-9682--opentelemetry.netlify.app/docs/contributing/sig-practices/#spec-integration-branches

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Merging now, but feedback is still welcome.

@chalin chalin force-pushed the chalin-m24-fix-spec-upd-action-2026-0418 branch from bafa692 to d55641d Compare April 19, 2026 07:13
chalin added 2 commits April 20, 2026 06:42
- Extracts the inline bash that picks the next integration version into a
  shared, testable Node helper at `scripts/gh/specs/pick-branch/`.
- Selects the upstream spec via `--spec=otel|semconv`; both
  `update-spec-integration-branch.yml` and
  `update-semconv-integration-branch.yml` now call the same helper.
- Auto-selects dry-run vs write mode based on `GITHUB_ACTIONS`; flags
  `--dry-run` / `--no-dry-run` override. Prints a `[mode]` banner
  explaining its choice and the picked VERSION/BRANCH.
- Opens a deduplicated tracking issue (label `<slug>-integration-warning`)
  when the helper detects problems such as stale integration branches;
  adds `issues: write` permission to both workflows.
- Aligns the semconv workflow with the spec workflow by adding an
  `env: { REPO, ABBR }` block and using `${{ env.REPO }}`/`${{ env.ABBR }}`
  in the submodule and PR-creation steps.
- Renames the workflow step from "Set environment variables" to
  "Pick integration branch".
- Adds 78 unit tests across `version`, `format`, `issue`, and `cli-args`
  test files; covers the version pipeline, output formatting, issue
  dedup/creation, and CLI argument parsing.
- Documents the setup under `content/en/site/build/ci-workflows.md`
  (Comms-SIG perspective) and adds release-time guidance for spec /
  semconv SIG maintainers under `content/en/docs/contributing/sig-practices.md`.
- Drive-by: promotes "Merging PRs" to a top-level heading in
  `sig-practices.md`, adds `linkTitle: PR checks & tests` to
  `pr-checks.md`.
@chalin chalin force-pushed the chalin-m24-fix-spec-upd-action-2026-0418 branch from d55641d to 49c9b9e Compare April 20, 2026 10:42
@otelbot-docs otelbot-docs bot added ready-to-be-merged This PR is ready to be merged by a maintainer and removed missing:docs-approval Co-owning SIG has provided approval, PR needs approval from docs maintainer labels Apr 20, 2026
@chalin chalin merged commit 26a8285 into open-telemetry:main Apr 20, 2026
26 checks passed
@chalin chalin deleted the chalin-m24-fix-spec-upd-action-2026-0418 branch April 20, 2026 12:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI/infra Repo CI & infrastructure ready-to-be-merged This PR is ready to be merged by a maintainer

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Update spec action is failing / not working / brittle

2 participants