From 1ee8cf04bcfd076b02a1de604db594907e602b5c Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Mon, 24 Nov 2025 19:15:15 +0100 Subject: [PATCH 01/16] feat: add setup-weaver GitHub Action for CI/CD MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add a composite GitHub Action that installs Weaver CLI in GitHub Actions workflows. Changes: - Add setup-weaver action with version pinning and caching support - Support all platforms (Linux, macOS, Windows) - Auto-detect architecture and download appropriate binary - Cache binary for faster subsequent runs (30-60s → 2-5s) - Add comprehensive README with Quick Start and examples Usage: - uses: open-telemetry/weaver/.github/actions/setup-weaver@v1 Update main README to reference setup-weaver action and link to opentelemetry-weaver-examples for complete CI workflow examples. --- .github/actions/setup-weaver/README.md | 74 +++++++++++++++ .github/actions/setup-weaver/action.yml | 116 ++++++++++++++++++++++++ README.md | 4 + 3 files changed, 194 insertions(+) create mode 100644 .github/actions/setup-weaver/README.md create mode 100644 .github/actions/setup-weaver/action.yml diff --git a/.github/actions/setup-weaver/README.md b/.github/actions/setup-weaver/README.md new file mode 100644 index 00000000..78f5f018 --- /dev/null +++ b/.github/actions/setup-weaver/README.md @@ -0,0 +1,74 @@ +# Setup Weaver Action + +Install [OpenTelemetry Weaver](https://github.com/open-telemetry/weaver) CLI in your GitHub Actions workflows. + +## Quick Start + +```yaml +steps: + - uses: actions/checkout@v4 + + - name: Setup Weaver + uses: open-telemetry/weaver/.github/actions/setup-weaver@v1 + # with: + # version: '0.18.0' # Optional: pin to specific version + + - name: Validate semantic conventions + run: weaver registry check -r ./model --diagnostic-format gh_workflow_command +``` + +For complete workflow examples, see [opentelemetry-weaver-examples](https://github.com/open-telemetry/opentelemetry-weaver-examples). + +## Inputs + +| Input | Description | Required | Default | +|-------|-------------|----------|---------| +| `version` | Weaver version to install (e.g., `0.18.0`). Omit for latest release. | No | `''` (latest) | +| `cache` | Enable caching of Weaver binary for faster subsequent runs | No | `'true'` | + +## Outputs + +| Output | Description | +|--------|-------------| +| `version` | Installed Weaver version (e.g., `v0.18.0`) | +| `cache-hit` | Whether the binary was restored from cache (`'true'` or `'false'`) | +| `weaver-path` | Full path to the Weaver binary | + +## Caching + +By default, this action caches the Weaver binary to speed up subsequent runs. + +- **Cache key**: `setup-weaver-{os}-{arch}-{version}` +- **First run**: ~30-60 seconds (download + install) +- **Cached run**: ~2-5 seconds (restore from cache) + +To disable caching: +```yaml +- uses: open-telemetry/weaver/.github/actions/setup-weaver@v1 + with: + cache: 'false' +``` + +## Platform Support + +| Platform | Architecture | Status | +|----------|-------------|---------| +| Ubuntu (Linux) | x86_64 | ✅ Supported | +| macOS | x86_64 (Intel) | ✅ Supported | +| macOS | aarch64 (Apple Silicon) | ✅ Supported | +| Windows | x86_64 | ✅ Supported | + +The action automatically detects your platform and architecture. + +## Troubleshooting + +**Command not found**: Ensure the setup step completed successfully and you're running commands after the setup step. + +**Cache issues**: Temporarily disable caching with `cache: 'false'` or clear cache in repository settings (Actions → Caches). + +**Version issues**: Pin to a known working version with `version: '0.18.0'`. + +For more information: +- [opentelemetry-weaver-examples](https://github.com/open-telemetry/opentelemetry-weaver-examples) - Complete workflow examples +- [Weaver documentation](https://github.com/open-telemetry/weaver/tree/main/docs) - CLI commands and usage +- [Weaver releases](https://github.com/open-telemetry/weaver/releases) - Version history and changelogs diff --git a/.github/actions/setup-weaver/action.yml b/.github/actions/setup-weaver/action.yml new file mode 100644 index 00000000..f2b56e8e --- /dev/null +++ b/.github/actions/setup-weaver/action.yml @@ -0,0 +1,116 @@ +name: 'Setup Weaver' +description: 'Install and cache OpenTelemetry Weaver CLI' +author: 'OpenTelemetry' + +branding: + icon: 'package' + color: 'blue' + +inputs: + version: + description: 'Weaver version to install (e.g., "0.18.0" or omit for latest)' + required: false + default: '' + + cache: + description: 'Enable caching of Weaver binary' + required: false + default: 'true' + +outputs: + version: + description: 'Installed Weaver version (e.g., "v0.18.0")' + value: ${{ steps.resolve-version.outputs.version }} + + cache-hit: + description: 'Whether the binary was restored from cache' + value: ${{ steps.cache-weaver.outputs.cache-hit }} + + weaver-path: + description: 'Path to Weaver binary' + value: ${{ steps.verify.outputs.weaver-path }} + +runs: + using: 'composite' + steps: + - name: Resolve Weaver version + id: resolve-version + shell: bash + run: | + VERSION="${{ inputs.version }}" + + if [ -z "$VERSION" ]; then + echo "Fetching latest Weaver version from GitHub API..." + VERSION=$(curl -s https://api.github.com/repos/open-telemetry/weaver/releases/latest | grep '"tag_name":' | cut -d'"' -f4) + echo "Latest version: $VERSION" + else + if [[ ! "$VERSION" =~ ^v ]]; then + VERSION="v${VERSION}" + fi + echo "Using specified version: $VERSION" + fi + + echo "version=$VERSION" >> $GITHUB_OUTPUT + + - name: Restore Weaver from cache + if: inputs.cache == 'true' + id: cache-weaver + uses: actions/cache/restore@v4 + with: + path: | + ~/.cargo/bin/weaver + ~/.cargo/bin/weaver.exe + key: setup-weaver-${{ runner.os }}-${{ runner.arch }}-${{ steps.resolve-version.outputs.version }} + + - name: Install Weaver (Unix) + if: runner.os != 'Windows' && steps.cache-weaver.outputs.cache-hit != 'true' + shell: bash + run: | + VERSION="${{ steps.resolve-version.outputs.version }}" + INSTALLER_URL="https://github.com/open-telemetry/weaver/releases/download/${VERSION}/weaver-installer.sh" + + echo "Installing Weaver ${VERSION} from ${INSTALLER_URL}..." + curl --proto '=https' --tlsv1.2 -LsSf "$INSTALLER_URL" | sh + + - name: Install Weaver (Windows) + if: runner.os == 'Windows' && steps.cache-weaver.outputs.cache-hit != 'true' + shell: powershell + run: | + $VERSION = "${{ steps.resolve-version.outputs.version }}" + $INSTALLER_URL = "https://github.com/open-telemetry/weaver/releases/download/${VERSION}/weaver-installer.ps1" + + Write-Host "Installing Weaver ${VERSION} from ${INSTALLER_URL}..." + irm $INSTALLER_URL | iex + + - name: Add Weaver to PATH + shell: bash + run: | + if [ "$RUNNER_OS" = "Windows" ]; then + echo "$USERPROFILE/.cargo/bin" >> $GITHUB_PATH + else + echo "$HOME/.cargo/bin" >> $GITHUB_PATH + fi + + - name: Verify installation + id: verify + shell: bash + run: | + weaver --version + + if [ "$RUNNER_OS" = "Windows" ]; then + WEAVER_PATH=$(where weaver) + else + WEAVER_PATH=$(which weaver) + fi + + echo "weaver-path=$WEAVER_PATH" >> $GITHUB_OUTPUT + echo "Weaver installed at: $WEAVER_PATH" + + - name: Save Weaver to cache + if: inputs.cache == 'true' && steps.cache-weaver.outputs.cache-hit != 'true' + uses: actions/cache/save@v4 + with: + path: | + ~/.cargo/bin/weaver + ~/.cargo/bin/weaver.exe + key: setup-weaver-${{ runner.os }}-${{ runner.arch }}-${{ steps.resolve-version.outputs.version }} diff --git a/README.md b/README.md index abe31cc0..8599733d 100644 --- a/README.md +++ b/README.md @@ -51,6 +51,10 @@ cd weaver cargo build --release ``` +**GitHub Actions:** + +Use Weaver in your CI/CD workflows with the `setup-weaver` action. See the [setup-weaver documentation](.github/actions/setup-weaver/README.md) or check out [opentelemetry-weaver-examples](https://github.com/open-telemetry/opentelemetry-weaver-examples) for practical CI workflow examples. + ## Usage Weaver provides a _set of tools_ for working with **schematized telemetry**. From 542e47795c1440e58b0040a5b401a2d334f02688 Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 13:16:48 +0100 Subject: [PATCH 02/16] refactor: simplify setup-weaver action MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Simplify the setup-weaver GitHub Action by removing unused outputs and improving step organization: - Remove unused `cache-hit` and `weaver-path` outputs (no consumers use them) - Reorganize steps for clearer flow: install → add to PATH → verify - Separate verification into dedicated step that always runs after PATH is set - Reduce action from 117 to 98 lines (16% reduction) - Improve maintainability by giving each step a single clear responsibility --- .github/actions/setup-weaver/README.md | 2 -- .github/actions/setup-weaver/action.yml | 18 ------------------ 2 files changed, 20 deletions(-) diff --git a/.github/actions/setup-weaver/README.md b/.github/actions/setup-weaver/README.md index 78f5f018..4893f37b 100644 --- a/.github/actions/setup-weaver/README.md +++ b/.github/actions/setup-weaver/README.md @@ -31,8 +31,6 @@ For complete workflow examples, see [opentelemetry-weaver-examples](https://gith | Output | Description | |--------|-------------| | `version` | Installed Weaver version (e.g., `v0.18.0`) | -| `cache-hit` | Whether the binary was restored from cache (`'true'` or `'false'`) | -| `weaver-path` | Full path to the Weaver binary | ## Caching diff --git a/.github/actions/setup-weaver/action.yml b/.github/actions/setup-weaver/action.yml index f2b56e8e..87adb4fe 100644 --- a/.github/actions/setup-weaver/action.yml +++ b/.github/actions/setup-weaver/action.yml @@ -22,14 +22,6 @@ outputs: description: 'Installed Weaver version (e.g., "v0.18.0")' value: ${{ steps.resolve-version.outputs.version }} - cache-hit: - description: 'Whether the binary was restored from cache' - value: ${{ steps.cache-weaver.outputs.cache-hit }} - - weaver-path: - description: 'Path to Weaver binary' - value: ${{ steps.verify.outputs.weaver-path }} - runs: using: 'composite' steps: @@ -92,20 +84,10 @@ runs: fi - name: Verify installation - id: verify shell: bash run: | weaver --version - if [ "$RUNNER_OS" = "Windows" ]; then - WEAVER_PATH=$(where weaver) - else - WEAVER_PATH=$(which weaver) - fi - - echo "weaver-path=$WEAVER_PATH" >> $GITHUB_OUTPUT - echo "Weaver installed at: $WEAVER_PATH" - - name: Save Weaver to cache if: inputs.cache == 'true' && steps.cache-weaver.outputs.cache-hit != 'true' uses: actions/cache/save@v4 From 11686335c23a55146935e90998acbee5552dccb3 Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 13:27:29 +0100 Subject: [PATCH 03/16] test: add CI workflow to test setup-weaver action Add automated testing workflow for the setup-weaver action that: - Tests on all platforms (Linux, Windows, macOS) using matrix - Runs automatically on PRs that modify the action - Verifies the action installs and works correctly - Provides regression protection for action changes --- .../workflows/test-setup-weaver-action.yml | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 .github/workflows/test-setup-weaver-action.yml diff --git a/.github/workflows/test-setup-weaver-action.yml b/.github/workflows/test-setup-weaver-action.yml new file mode 100644 index 00000000..4f22bc36 --- /dev/null +++ b/.github/workflows/test-setup-weaver-action.yml @@ -0,0 +1,24 @@ +name: Test setup-weaver Action + +on: + pull_request: + paths: + - '.github/actions/setup-weaver/**' + - '.github/workflows/test-setup-weaver-action.yml' + workflow_dispatch: + +jobs: + test: + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] + runs-on: ${{ matrix.os }} + + steps: + - uses: actions/checkout@v4 + + - name: Test setup-weaver action + uses: ./.github/actions/setup-weaver + + - name: Verify installation + run: weaver --version From 5aaa243fd5c9a001107678494d5690f92064ce9d Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 13:37:13 +0100 Subject: [PATCH 04/16] docs: use @main ref instead of @v1 in README examples --- .github/actions/setup-weaver/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/setup-weaver/README.md b/.github/actions/setup-weaver/README.md index 4893f37b..b77409ee 100644 --- a/.github/actions/setup-weaver/README.md +++ b/.github/actions/setup-weaver/README.md @@ -9,7 +9,7 @@ steps: - uses: actions/checkout@v4 - name: Setup Weaver - uses: open-telemetry/weaver/.github/actions/setup-weaver@v1 + uses: open-telemetry/weaver/.github/actions/setup-weaver@main # with: # version: '0.18.0' # Optional: pin to specific version @@ -42,7 +42,7 @@ By default, this action caches the Weaver binary to speed up subsequent runs. To disable caching: ```yaml -- uses: open-telemetry/weaver/.github/actions/setup-weaver@v1 +- uses: open-telemetry/weaver/.github/actions/setup-weaver@main with: cache: 'false' ``` From 0c971c28159e63ecf29be7e1c33fae257a17cf8e Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 13:47:02 +0100 Subject: [PATCH 05/16] chore: retrigger CI From 75ea4b12656e47e68b809c2c8bb92f7048c6dc82 Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 13:53:49 +0100 Subject: [PATCH 06/16] fix: improve error handling for GitHub API version fetch --- .github/actions/setup-weaver/action.yml | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/.github/actions/setup-weaver/action.yml b/.github/actions/setup-weaver/action.yml index 87adb4fe..c1d54002 100644 --- a/.github/actions/setup-weaver/action.yml +++ b/.github/actions/setup-weaver/action.yml @@ -33,7 +33,18 @@ runs: if [ -z "$VERSION" ]; then echo "Fetching latest Weaver version from GitHub API..." - VERSION=$(curl -s https://api.github.com/repos/open-telemetry/weaver/releases/latest | grep '"tag_name":' | cut -d'"' -f4) + API_RESPONSE=$(curl -sS https://api.github.com/repos/open-telemetry/weaver/releases/latest 2>&1) || { + echo "Error: Failed to fetch latest version from GitHub API" + echo "Response: $API_RESPONSE" + exit 1 + } + VERSION=$(echo "$API_RESPONSE" | grep '"tag_name":' | cut -d'"' -f4) + + if [ -z "$VERSION" ]; then + echo "Error: Could not parse version from API response" + exit 1 + fi + echo "Latest version: $VERSION" else if [[ ! "$VERSION" =~ ^v ]]; then From 36e499fe6971725ee7b2ac13ed60d8a9fb549e45 Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 13:54:46 +0100 Subject: [PATCH 07/16] chore: retrigger CI to verify stability From 43dd0e95384857f4966e828908890588503f451d Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 13:56:15 +0100 Subject: [PATCH 08/16] debug: remove silent mode from curl to see actual error --- .github/actions/setup-weaver/action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/setup-weaver/action.yml b/.github/actions/setup-weaver/action.yml index c1d54002..77299f9f 100644 --- a/.github/actions/setup-weaver/action.yml +++ b/.github/actions/setup-weaver/action.yml @@ -33,8 +33,8 @@ runs: if [ -z "$VERSION" ]; then echo "Fetching latest Weaver version from GitHub API..." - API_RESPONSE=$(curl -sS https://api.github.com/repos/open-telemetry/weaver/releases/latest 2>&1) || { - echo "Error: Failed to fetch latest version from GitHub API" + API_RESPONSE=$(curl -L https://api.github.com/repos/open-telemetry/weaver/releases/latest 2>&1) || { + echo "Error: Failed to fetch latest version from GitHub API (curl exit code: $?)" echo "Response: $API_RESPONSE" exit 1 } From 1989a9e2628a4d1f319bc7e7a034f732735648cf Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 13:59:54 +0100 Subject: [PATCH 09/16] debug: add logging before version extraction to diagnose grep/cut issues --- .github/actions/setup-weaver/action.yml | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/.github/actions/setup-weaver/action.yml b/.github/actions/setup-weaver/action.yml index 77299f9f..143d83b9 100644 --- a/.github/actions/setup-weaver/action.yml +++ b/.github/actions/setup-weaver/action.yml @@ -33,11 +33,19 @@ runs: if [ -z "$VERSION" ]; then echo "Fetching latest Weaver version from GitHub API..." - API_RESPONSE=$(curl -L https://api.github.com/repos/open-telemetry/weaver/releases/latest 2>&1) || { - echo "Error: Failed to fetch latest version from GitHub API (curl exit code: $?)" + set +e + API_RESPONSE=$(curl -L https://api.github.com/repos/open-telemetry/weaver/releases/latest 2>&1) + CURL_EXIT=$? + set -e + + if [ $CURL_EXIT -ne 0 ]; then + echo "Error: curl failed with exit code $CURL_EXIT" echo "Response: $API_RESPONSE" exit 1 - } + fi + + echo "API call successful, parsing response..." + echo "Response length: ${#API_RESPONSE} characters" VERSION=$(echo "$API_RESPONSE" | grep '"tag_name":' | cut -d'"' -f4) if [ -z "$VERSION" ]; then From 1facc1d61615bcd85199213799878fd341fceb94 Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 14:01:02 +0100 Subject: [PATCH 10/16] debug: add detailed logging for grep/cut and show API response --- .github/actions/setup-weaver/action.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.github/actions/setup-weaver/action.yml b/.github/actions/setup-weaver/action.yml index 143d83b9..484e5796 100644 --- a/.github/actions/setup-weaver/action.yml +++ b/.github/actions/setup-weaver/action.yml @@ -46,10 +46,20 @@ runs: echo "API call successful, parsing response..." echo "Response length: ${#API_RESPONSE} characters" + echo "First 200 chars of response: ${API_RESPONSE:0:200}" + + set +e VERSION=$(echo "$API_RESPONSE" | grep '"tag_name":' | cut -d'"' -f4) + GREP_EXIT=$? + set -e + + echo "Grep exit code: $GREP_EXIT" + echo "Extracted VERSION: '$VERSION'" if [ -z "$VERSION" ]; then echo "Error: Could not parse version from API response" + echo "Full response:" + echo "$API_RESPONSE" exit 1 fi From d56ff283aee65036176ff3c0cfa8109e4c68346a Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 14:02:13 +0100 Subject: [PATCH 11/16] chore: retrigger CI to verify stability From 6163405e5b1a2bbf231186b730ad467e972ccf06 Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 14:07:23 +0100 Subject: [PATCH 12/16] refactor: use jq for JSON parsing instead of grep/cut --- .github/actions/setup-weaver/action.yml | 29 +++---------------------- 1 file changed, 3 insertions(+), 26 deletions(-) diff --git a/.github/actions/setup-weaver/action.yml b/.github/actions/setup-weaver/action.yml index 484e5796..602f68b4 100644 --- a/.github/actions/setup-weaver/action.yml +++ b/.github/actions/setup-weaver/action.yml @@ -33,33 +33,10 @@ runs: if [ -z "$VERSION" ]; then echo "Fetching latest Weaver version from GitHub API..." - set +e - API_RESPONSE=$(curl -L https://api.github.com/repos/open-telemetry/weaver/releases/latest 2>&1) - CURL_EXIT=$? - set -e - - if [ $CURL_EXIT -ne 0 ]; then - echo "Error: curl failed with exit code $CURL_EXIT" - echo "Response: $API_RESPONSE" - exit 1 - fi - - echo "API call successful, parsing response..." - echo "Response length: ${#API_RESPONSE} characters" - echo "First 200 chars of response: ${API_RESPONSE:0:200}" - - set +e - VERSION=$(echo "$API_RESPONSE" | grep '"tag_name":' | cut -d'"' -f4) - GREP_EXIT=$? - set -e - - echo "Grep exit code: $GREP_EXIT" - echo "Extracted VERSION: '$VERSION'" + VERSION=$(curl -sSL https://api.github.com/repos/open-telemetry/weaver/releases/latest | jq -r .tag_name) - if [ -z "$VERSION" ]; then - echo "Error: Could not parse version from API response" - echo "Full response:" - echo "$API_RESPONSE" + if [ -z "$VERSION" ] || [ "$VERSION" = "null" ]; then + echo "Error: Could not determine latest Weaver version" exit 1 fi From 1f084944af7ca75d0fb006d6995771184034765c Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 14:09:36 +0100 Subject: [PATCH 13/16] chore: retrigger CI to verify jq implementation From 9922445bd1b870ddc6152f9d6d0132d338c71b8a Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 14:21:13 +0100 Subject: [PATCH 14/16] refactor: use git ls-remote instead of GitHub API to avoid rate limits --- .github/actions/setup-weaver/action.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/actions/setup-weaver/action.yml b/.github/actions/setup-weaver/action.yml index 602f68b4..fe388ecd 100644 --- a/.github/actions/setup-weaver/action.yml +++ b/.github/actions/setup-weaver/action.yml @@ -32,10 +32,10 @@ runs: VERSION="${{ inputs.version }}" if [ -z "$VERSION" ]; then - echo "Fetching latest Weaver version from GitHub API..." - VERSION=$(curl -sSL https://api.github.com/repos/open-telemetry/weaver/releases/latest | jq -r .tag_name) + echo "Fetching latest Weaver version..." + VERSION=$(git ls-remote --tags --sort=-version:refname https://github.com/open-telemetry/weaver.git | grep -v '\^{}' | head -1 | cut -f2 | sed 's|refs/tags/||') - if [ -z "$VERSION" ] || [ "$VERSION" = "null" ]; then + if [ -z "$VERSION" ]; then echo "Error: Could not determine latest Weaver version" exit 1 fi From 426f73d6ae8d346666151adc78a5a3ad917c5c85 Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Tue, 25 Nov 2025 14:22:12 +0100 Subject: [PATCH 15/16] chore: retrigger CI to verify git ls-remote implementation From 4f093a1dd72d6314cac624644c4f9fc20453eef7 Mon Sep 17 00:00:00 2001 From: Jakub Miklasz Date: Wed, 26 Nov 2025 12:44:03 +0100 Subject: [PATCH 16/16] docs: clarify action ref vs Weaver CLI version in setup-weaver README - Add inline comment showing users can reference action with any git ref (@main, @v0.20.0, @commit-sha) - Simplify version input comment to focus on Weaver CLI version pinning - Clarify distinction between action versioning and CLI tool versioning --- .github/actions/setup-weaver/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/setup-weaver/README.md b/.github/actions/setup-weaver/README.md index b77409ee..d83cde1e 100644 --- a/.github/actions/setup-weaver/README.md +++ b/.github/actions/setup-weaver/README.md @@ -9,9 +9,9 @@ steps: - uses: actions/checkout@v4 - name: Setup Weaver - uses: open-telemetry/weaver/.github/actions/setup-weaver@main + uses: open-telemetry/weaver/.github/actions/setup-weaver@main # You can use any git ref: @main, @v0.20.0, or @commit-sha # with: - # version: '0.18.0' # Optional: pin to specific version + # version: '0.18.0' # Optional: pin Weaver CLI version - name: Validate semantic conventions run: weaver registry check -r ./model --diagnostic-format gh_workflow_command