diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 81e6c4910..a96ceb0eb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,10 +21,33 @@ jobs: - uses: actions/checkout@v6 with: path: cle + - name: Resolve the angr/binaries ref + id: binaries-ref + shell: bash + env: + GH_TOKEN: ${{ github.token }} + PR_BODY: ${{ github.event.pull_request.body }} + run: | + ref=master + number=$(printf '%s' "$PR_BODY" | + grep -Eo '(angr/binaries#|github\.com/angr/binaries/pull/)[0-9]+' | + head -n 1 | + grep -Eo '[0-9]+$') || true + if [ -n "$number" ]; then + state=$(gh api "repos/angr/binaries/pulls/$number" --jq .state) || state=unavailable + if [ "$state" = open ]; then + ref="refs/pull/$number/head" + else + echo "angr/binaries#$number is $state, so it is not used" + fi + fi + echo "Checking out angr/binaries at $ref" + echo "ref=$ref" >>"$GITHUB_OUTPUT" - uses: actions/checkout@v6 with: repository: angr/binaries path: binaries + ref: ${{ steps.binaries-ref.outputs.ref }} - name: Install the latest version of uv uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 - uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1