diff --git a/.github/workflows/accuracy_performance.yml b/.github/workflows/accuracy_performance.yml index b27089d..8323534 100644 --- a/.github/workflows/accuracy_performance.yml +++ b/.github/workflows/accuracy_performance.yml @@ -6,6 +6,7 @@ name: PR Evaluation on: pull_request: + types: [opened, synchronize, reopened, ready_for_review] branches: - main paths: @@ -17,6 +18,10 @@ on: - 'benchmarks/**' workflow_dispatch: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + permissions: contents: read packages: write @@ -28,6 +33,7 @@ jobs: # All downstream jobs pull these images instead of rebuilding. # --------------------------------------------------------------------------- build: + if: github.event_name != 'pull_request' || github.event.pull_request.draft == false name: Build CI images runs-on: ubuntu-latest outputs: diff --git a/.github/workflows/correctness.yml b/.github/workflows/correctness.yml index bf9f693..b79ef57 100644 --- a/.github/workflows/correctness.yml +++ b/.github/workflows/correctness.yml @@ -13,6 +13,7 @@ on: - 'asap-common/sketch-core/**' - '.github/workflows/correctness.yml' pull_request: + types: [opened, synchronize, reopened, ready_for_review] branches: [ main ] paths: - 'asap-common/tests/**' @@ -21,9 +22,14 @@ on: - '.github/workflows/correctness.yml' workflow_dispatch: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + jobs: # ── 1. Cross-language token matching (Python vs Rust) ────────────────────── cross-language-token-matching: + if: github.event_name != 'pull_request' || github.event.pull_request.draft == false name: Cross-language PromQL token matching runs-on: ubuntu-latest steps: @@ -82,6 +88,7 @@ jobs: # ── 2. Cross-language serialised pattern comparison ──────────────────────── cross-language-pattern-serialisation: + if: github.event_name != 'pull_request' || github.event.pull_request.draft == false name: Cross-language pattern serialisation runs-on: ubuntu-latest steps: @@ -136,6 +143,7 @@ jobs: # ── 3. Rust pattern-matching unit tests ──────────────────────────────────── rust-pattern-matching: + if: github.event_name != 'pull_request' || github.event.pull_request.draft == false name: Rust pattern matching unit tests runs-on: ubuntu-latest steps: diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index c1376aa..d928369 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -5,6 +5,7 @@ on: tags: - 'v[0-9]+.[0-9]+.[0-9]+*' pull_request: + types: [opened, synchronize, reopened, ready_for_review] branches: [main] paths: - 'asap-common/installation/**' @@ -21,12 +22,17 @@ on: required: true default: 'dev' +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + permissions: packages: write contents: read jobs: build-images: + if: github.event_name != 'pull_request' || github.event.pull_request.draft == false runs-on: ubuntu-latest steps: - name: Checkout code diff --git a/.github/workflows/python.yml b/.github/workflows/python.yml index d0990ea..0590d12 100644 --- a/.github/workflows/python.yml +++ b/.github/workflows/python.yml @@ -12,6 +12,7 @@ on: - 'asap-common/dependencies/py/**' - '.github/workflows/python.yml' pull_request: + types: [opened, synchronize, reopened, ready_for_review] branches: [ main ] paths: - 'asap-summary-ingest/**' @@ -23,12 +24,17 @@ on: - '.github/workflows/python.yml' workflow_dispatch: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + permissions: contents: read pull-requests: read jobs: detect-changes: + if: github.event_name != 'pull_request' || github.event.pull_request.draft == false runs-on: ubuntu-latest outputs: summary_ingest: ${{ steps.filter.outputs.summary_ingest }} diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index a7390d9..42bfdcf 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -12,6 +12,7 @@ on: - 'Cargo.lock' - '.github/workflows/rust.yml' pull_request: + types: [opened, synchronize, reopened, ready_for_review] branches: [ main ] paths: - 'asap-query-engine/**' @@ -23,11 +24,16 @@ on: - '.github/workflows/rust.yml' workflow_dispatch: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + env: CARGO_TERM_COLOR: always jobs: format-and-lint: + if: github.event_name != 'pull_request' || github.event.pull_request.draft == false runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -64,6 +70,7 @@ jobs: RUSTC_WRAPPER: sccache test: + if: github.event_name != 'pull_request' || github.event.pull_request.draft == false runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -108,4 +115,4 @@ jobs: uses: docker/setup-buildx-action@v3 - name: Build Docker image - run: docker build -f asap-query-engine/Dockerfile -t sketchdb-queryengine-rust:latest . \ No newline at end of file + run: docker build -f asap-query-engine/Dockerfile -t sketchdb-queryengine-rust:latest .