From bd0f47e27ea786cd1773e4e48b5c36147d15c6e5 Mon Sep 17 00:00:00 2001 From: Jill Regan Date: Mon, 9 Mar 2026 15:16:34 -0400 Subject: [PATCH] Wait for connect sync --- .github/workflows/e2e-tests.yml | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 0b86e68..07e597a 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -30,6 +30,7 @@ jobs: runs-on: ${{ matrix.os }} strategy: fail-fast: true + max-parallel: 4 matrix: os: [ubuntu-latest, macos-latest, windows-latest] version: [latest, 2.30.0] @@ -144,6 +145,7 @@ jobs: runs-on: ubuntu-latest strategy: fail-fast: true + max-parallel: 4 matrix: os: [ubuntu-latest, macos-latest, windows-latest] version: [latest, 2.30.0] @@ -190,6 +192,24 @@ jobs: connect-host: http://localhost:8080 connect-token: ${{ secrets.OP_CONNECT_TOKEN }} + - name: Wait for Connect sync to be ready + env: + OP_CONNECT_HOST: http://localhost:8080 + OP_CONNECT_TOKEN: ${{ secrets.OP_CONNECT_TOKEN }} + run: | + url="${OP_CONNECT_HOST}/health" + for i in $(seq 1 12); do + sync_status=$(curl -sf -H "Authorization: Bearer $OP_CONNECT_TOKEN" "$url" | jq -r '.dependencies[] | select(.service=="sync") | .status // empty') + if [ "$sync_status" = "ACTIVE" ]; then + echo "Connect sync is ready" + exit 0 + fi + echo "Waiting for sync ($i/12)... status=${sync_status:-unknown}" + sleep 5 + done + echo "Timeout waiting for Connect sync" + exit 1 + - name: Load secrets id: load_secrets uses: ./