You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tooling.apache.org by sb...@apache.org on 2026/06/26 18:47:00 UTC

(tooling-trusted-releases) branch sbp updated (abe689af -> 8e6e2d41)

This is an automated email from the ASF dual-hosted git repository.

sbp pushed a change to branch sbp
in repository https://gitbox.apache.org/repos/asf/tooling-trusted-releases.git


 discard abe689af Add a workflow to test client compatibility with the server
     new 8e6e2d41 Add a workflow to test client compatibility with the server

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (abe689af)
            \
             N -- N -- N   refs/heads/sbp (8e6e2d41)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .github/workflows/client-compat.yml | 3 +++
 1 file changed, 3 insertions(+)


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tooling.apache.org
For additional commands, e-mail: commits-help@tooling.apache.org


(tooling-trusted-releases) 01/01: Add a workflow to test client compatibility with the server

Posted by sb...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

sbp pushed a commit to branch sbp
in repository https://gitbox.apache.org/repos/asf/tooling-trusted-releases.git

commit 8e6e2d4143b7e5e68025d99d0d491dbb2e6041e1
Author: Sean B. Palmer <se...@miscoranda.com>
AuthorDate: Fri Jun 26 19:46:29 2026 +0100

    Add a workflow to test client compatibility with the server
---
 .github/workflows/client-compat.yml | 97 +++++++++++++++++++++++++++++++++++++
 1 file changed, 97 insertions(+)

diff --git a/.github/workflows/client-compat.yml b/.github/workflows/client-compat.yml
new file mode 100644
index 00000000..eb9f279c
--- /dev/null
+++ b/.github/workflows/client-compat.yml
@@ -0,0 +1,97 @@
+name: Client compatibility
+
+on:
+  push:
+    branches: [altera, arm, main, sbp, tertia]
+  workflow_dispatch:
+
+permissions:
+  contents: read
+  issues: write
+
+jobs:
+  client-compat:
+    runs-on: self-hosted
+    continue-on-error: true
+    steps:
+      - name: Check out server (this branch)
+        uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
+        with:
+          persist-credentials: false
+
+      - uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
+        with:
+          python-version: '3.13'
+      - uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
+        with:
+          version: '0.11.20'
+
+      - name: Start the test-mode server
+        run: |
+          uv sync --frozen --no-dev
+          make certs
+          ( cd state/hypercorn/secrets \
+            && ln -sf cert.pem localhost.apache.org+2.pem \
+            && ln -sf key.pem localhost.apache.org+2-key.pem )
+          make serve-local &
+          for _ in $(seq 1 60); do
+            curl -ksf https://localhost.apache.org:8080/ >/dev/null && break
+            sleep 1
+          done
+          curl -ksf https://localhost.apache.org:8080/ >/dev/null
+
+      - name: Mint a PAT for the test user
+        run: |
+          set -euo pipefail
+          curl -ksSf https://localhost.apache.org:8080/test/pat -o "$HOME/.atr-pat"
+          test -s "$HOME/.atr-pat"
+
+      - name: Check out client HEAD
+        uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
+        with:
+          repository: apache/tooling-releases-client
+          ref: main
+          path: client
+          persist-credentials: false
+
+      - name: Run client transcripts against server branch
+        id: smoke
+        continue-on-error: true
+        working-directory: client
+        env:
+          USER: test
+        run: |
+          uv sync --frozen --all-groups
+          uv run --frozen pytest -q
+
+      - name: Open an issue on new breakage
+        if: steps.smoke.outcome == 'failure'
+        env:
+          GH_TOKEN: ${{ github.token }}
+          REPO: ${{ github.repository }}
+          BRANCH: ${{ github.ref_name }}
+          ACTOR: ${{ github.actor }}
+          SHA: ${{ github.sha }}
+          RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
+        run: |
+          set -euo pipefail
+          label="client-compat"
+          title="Client HEAD broke against server [${BRANCH}]"
+          gh label create "$label" --repo "$REPO" --color B60205 \
+            --description "Client HEAD failed the server-CI compatibility check" 2>/dev/null || true
+          open=$(gh issue list --repo "$REPO" --state open --label "$label" --json title \
+            | jq --arg t "$title" 'any(.[]; .title == $t)')
+          if [ "$open" = "true" ]; then
+            echo "An open ${label} issue already exists for ${BRANCH}; doing nothing."
+            exit 0
+          fi
+          body=$(cat <<EOF
+          The client (apache/tooling-releases-client at HEAD) failed the compatibility check against server branch ${BRANCH} at commit ${SHA}.
+
+          Run: ${RUN_URL}
+
+          cc @${ACTOR}
+          EOF
+          )
+          gh issue create --repo "$REPO" --label "$label" --assignee "$ACTOR" \
+            --title "$title" --body "$body"


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@tooling.apache.org
For additional commands, e-mail: commits-help@tooling.apache.org