From 51cc42656fe7a724db8bf7d2bccaa582265ff3a8 Mon Sep 17 00:00:00 2001 From: Bruce Ritchie Date: Thu, 26 Dec 2024 21:33:24 +0000 Subject: [PATCH] move hash collision job to it's own file and setup to run only on merge to main. --- .github/workflows/hash_collisions.yml | 54 +++++++++++++++++++++++++++ .github/workflows/rust.yml | 21 ----------- 2 files changed, 54 insertions(+), 21 deletions(-) create mode 100644 .github/workflows/hash_collisions.yml diff --git a/.github/workflows/hash_collisions.yml b/.github/workflows/hash_collisions.yml new file mode 100644 index 0000000000000..908bec9d134aa --- /dev/null +++ b/.github/workflows/hash_collisions.yml @@ -0,0 +1,54 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +name: Rust Hash Collisions + +concurrency: + group: ${{ github.repository }}-${{ github.head_ref || github.sha }}-${{ github.workflow }} + cancel-in-progress: true + +# https://docs.github.com/en/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows#running-your-pull_request-workflow-when-a-pull-request-merges +# +# this job is intended to only run on merge to main branch +on: + pull_request: + branches: + - main + types: + - closed + +jobs: + # Check answers are correct when hash values collide + hash-collisions: + name: cargo test hash collisions (amd64) + runs-on: ubuntu-latest + container: + image: amd64/rust + if: github.event.pull_request.merged == true + steps: + - uses: actions/checkout@v4 + with: + submodules: true + fetch-depth: 1 + - name: Setup Rust toolchain + uses: ./.github/actions/setup-builder + with: + rust-version: stable + - name: Run tests + run: | + cd datafusion + cargo test --profile ci --exclude datafusion-examples --exclude datafusion-benchmarks --exclude datafusion-sqllogictest --workspace --lib --tests --features=force_hash_collisions,avro diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index f5b6eece9dc8a..7ac0dfa78215c 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -541,27 +541,6 @@ jobs: - name: Run clippy run: ci/scripts/rust_clippy.sh - # Check answers are correct when hash values collide - hash-collisions: - name: cargo test hash collisions (amd64) - needs: linux-build-lib - runs-on: ubuntu-latest - container: - image: amd64/rust - steps: - - uses: actions/checkout@v4 - with: - submodules: true - fetch-depth: 1 - - name: Setup Rust toolchain - uses: ./.github/actions/setup-builder - with: - rust-version: stable - - name: Run tests - run: | - cd datafusion - cargo test --profile ci --exclude datafusion-examples --exclude datafusion-benchmarks --exclude datafusion-sqllogictest --workspace --lib --tests --features=force_hash_collisions,avro - cargo-toml-formatting-checks: name: check Cargo.toml formatting needs: linux-build-lib