From 39b3d5863311db7ddfdfc596df03bddd077a745b Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Mon, 1 Apr 2024 19:59:45 +0200 Subject: [PATCH] Only run PRs CI when review is requested (#4599) (#4615) * Only run PRs CI when run-ci label is added (#4599) * Refs #20648: Only run PRs CI when run-ci label is added Signed-off-by: EduPonz * Refs #20648: Correctly add ci-pending label Signed-off-by: EduPonz * Refs #20648: Fix documentation trigger Signed-off-by: EduPonz * Refs #20648: Add ci-pending label in mac CI Signed-off-by: EduPonz * Refs #20648: Set eProsima-CI version to v0 on add and remove labels actions Signed-off-by: EduPonz * Refs #20648: Change Github workflows trigger to 'review_requested' Signed-off-by: EduPonz --------- Signed-off-by: EduPonz (cherry picked from commit d0a334b11633b8cbe2b68350a763a6b292183247) # Conflicts: # .github/workflows/address-sanitizers.yaml # .github/workflows/documentation-tests.yaml # .github/workflows/mac-ci.yml # .github/workflows/thread-sanitizer.yaml # .github/workflows/ubuntu-ci.yml # .github/workflows/windows-ci.yml * Fix conflicts Signed-off-by: JesusPoderoso --------- Signed-off-by: JesusPoderoso Co-authored-by: Eduardo Ponz Segrelles Co-authored-by: JesusPoderoso --- .github/workflows/address-sanitizers.yaml | 36 +++++++++++++++++----- .github/workflows/documentation-tests.yaml | 18 ++++++++--- .github/workflows/mac-ci.yml | 10 +++--- .github/workflows/reusable-mac-ci.yml | 8 +++++ .github/workflows/reusable-ubuntu-ci.yml | 8 +++++ .github/workflows/reusable-windows-ci.yml | 8 +++++ .github/workflows/thread-sanitizer.yaml | 20 +++++++++--- .github/workflows/ubuntu-ci.yml | 14 ++++++++- .github/workflows/windows-ci.yml | 10 +++--- 9 files changed, 106 insertions(+), 26 deletions(-) diff --git a/.github/workflows/address-sanitizers.yaml b/.github/workflows/address-sanitizers.yaml index 71f345ea70d..cb4ed07ca36 100644 --- a/.github/workflows/address-sanitizers.yaml +++ b/.github/workflows/address-sanitizers.yaml @@ -13,8 +13,8 @@ on: default: '2.6.x' pull_request: - branches: - - '2.6.x' + types: + - review_requested paths-ignore: - '**.md' - '**.txt' @@ -27,9 +27,11 @@ concurrency: jobs: asan-test: - if: ${{ !(contains(github.event.pull_request.labels.*.name, 'no-test') || - contains(github.event.pull_request.labels.*.name, 'skip-ci') || - contains(github.event.pull_request.labels.*.name, 'conflicts')) }} + if: ${{ ( + !contains(github.event.pull_request.labels.*.name, 'skip-ci') && + !contains(github.event.pull_request.labels.*.name, 'no-test') && + !contains(github.event.pull_request.labels.*.name, 'conflicts') + ) }} runs-on: ubuntu-22.04 @@ -37,6 +39,14 @@ jobs: FASTDDS_BRANCH: ${{ github.head_ref || github.event.inputs.fastdds_branch || '2.6.x' }} steps: + - name: Add ci-pending label if PR + if: ${{ github.event_name == 'pull_request' }} + uses: eProsima/eProsima-CI/external/add_labels@v0 + with: + labels: ci-pending + number: ${{ github.event.number }} + repo: eProsima/Fast-DDS + # https://github.com/actions/runner-images/issues/9491 - name: Fix kernel mmap rnd bits run: sudo sysctl vm.mmap_rnd_bits=28 @@ -123,9 +133,11 @@ jobs: asan-discovery-server-test: - if: ${{ !(contains(github.event.pull_request.labels.*.name, 'no-test') || - contains(github.event.pull_request.labels.*.name, 'skip-ci') || - contains(github.event.pull_request.labels.*.name, 'conflicts')) }} + if: ${{ ( + !contains(github.event.pull_request.labels.*.name, 'skip-ci') && + !contains(github.event.pull_request.labels.*.name, 'no-test') && + !contains(github.event.pull_request.labels.*.name, 'conflicts') + ) }} runs-on: ubuntu-22.04 @@ -134,6 +146,14 @@ jobs: DEFAULT_DISCOVERY_SERVER_BRANCH: ${{ github.event.inputs.discovery_server_branch || 'v1.2.1' }} steps: + - name: Add ci-pending label if PR + if: ${{ github.event_name == 'pull_request' }} + uses: eProsima/eProsima-CI/external/add_labels@v0 + with: + labels: ci-pending + number: ${{ github.event.number }} + repo: eProsima/Fast-DDS + # https://github.com/actions/runner-images/issues/9491 - name: Fix kernel mmap rnd bits run: sudo sysctl vm.mmap_rnd_bits=28 diff --git a/.github/workflows/documentation-tests.yaml b/.github/workflows/documentation-tests.yaml index e9f835980bc..67460d11cc5 100644 --- a/.github/workflows/documentation-tests.yaml +++ b/.github/workflows/documentation-tests.yaml @@ -9,8 +9,8 @@ on: default: '2.6.x' pull_request: - branches: - - '2.6.x' + types: + - review_requested paths-ignore: - '**.md' - '**.txt' @@ -26,11 +26,21 @@ env: jobs: ubuntu-build-and-test-documentation: name: Documentation build and test - if: ${{ !(contains(github.event.pull_request.labels.*.name, 'skip-ci') || - contains(github.event.pull_request.labels.*.name, 'conflicts')) }} + if: ${{ ( + !contains(github.event.pull_request.labels.*.name, 'skip-ci') && + !contains(github.event.pull_request.labels.*.name, 'conflicts') + ) }} runs-on: ubuntu-22.04 steps: + - name: Add ci-pending label if PR + if: ${{ github.event_name == 'pull_request' }} + uses: eProsima/eProsima-CI/external/add_labels@v0 + with: + labels: ci-pending + number: ${{ github.event.number }} + repo: eProsima/Fast-DDS + - name: Sync eProsima/Fast-DDS repository uses: eProsima/eProsima-CI/external/checkout@v0 with: diff --git a/.github/workflows/mac-ci.yml b/.github/workflows/mac-ci.yml index 14152386b71..e48938981bc 100644 --- a/.github/workflows/mac-ci.yml +++ b/.github/workflows/mac-ci.yml @@ -25,8 +25,8 @@ on: required: true pull_request: - branches: - - '2.6.x' + types: + - review_requested paths-ignore: - '**.md' - '**.txt' @@ -38,9 +38,11 @@ concurrency: jobs: mac-ci: + if: ${{ ( + !contains(github.event.pull_request.labels.*.name, 'skip-ci') && + !contains(github.event.pull_request.labels.*.name, 'conflicts') + ) }} uses: ./.github/workflows/reusable-mac-ci.yml - if: ${{ !(contains(github.event.pull_request.labels.*.name, 'skip-ci') || - contains(github.event.pull_request.labels.*.name, 'conflicts')) }} with: label: ${{ inputs.label || 'mac-ci' }} colcon-args: ${{ inputs.colcon-args }} diff --git a/.github/workflows/reusable-mac-ci.yml b/.github/workflows/reusable-mac-ci.yml index 2ae6ca53761..fa4ece811ef 100644 --- a/.github/workflows/reusable-mac-ci.yml +++ b/.github/workflows/reusable-mac-ci.yml @@ -44,6 +44,14 @@ jobs: cmake-build-type: - 'RelWithDebInfo' steps: + - name: Add ci-pending label if PR + if: ${{ github.event_name == 'pull_request' }} + uses: eProsima/eProsima-CI/external/add_labels@v0 + with: + labels: ci-pending + number: ${{ github.event.number }} + repo: eProsima/Fast-DDS + - name: Sync eProsima/Fast-DDS repository uses: eProsima/eProsima-CI/external/checkout@v0 with: diff --git a/.github/workflows/reusable-ubuntu-ci.yml b/.github/workflows/reusable-ubuntu-ci.yml index 2e50568f863..e93d2ea3f03 100644 --- a/.github/workflows/reusable-ubuntu-ci.yml +++ b/.github/workflows/reusable-ubuntu-ci.yml @@ -42,6 +42,14 @@ jobs: cmake-build-type: - 'RelWithDebInfo' steps: + - name: Add ci-pending label if PR + if: ${{ github.event_name == 'pull_request' }} + uses: eProsima/eProsima-CI/external/add_labels@v0 + with: + labels: ci-pending + number: ${{ github.event.number }} + repo: eProsima/Fast-DDS + - name: Sync eProsima/Fast-DDS repository uses: eProsima/eProsima-CI/external/checkout@v0 with: diff --git a/.github/workflows/reusable-windows-ci.yml b/.github/workflows/reusable-windows-ci.yml index d5272f2a6ab..21fdedccd00 100644 --- a/.github/workflows/reusable-windows-ci.yml +++ b/.github/workflows/reusable-windows-ci.yml @@ -41,6 +41,14 @@ jobs: - 'v141' - 'v142' steps: + - name: Add ci-pending label if PR + if: ${{ github.event_name == 'pull_request' }} + uses: eProsima/eProsima-CI/external/add_labels@v0 + with: + labels: ci-pending + number: ${{ github.event.number }} + repo: eProsima/Fast-DDS + - name: Sync eProsima/Fast-DDS repository uses: eProsima/eProsima-CI/external/checkout@v0 with: diff --git a/.github/workflows/thread-sanitizer.yaml b/.github/workflows/thread-sanitizer.yaml index 50b250803c3..77a9d539a1d 100644 --- a/.github/workflows/thread-sanitizer.yaml +++ b/.github/workflows/thread-sanitizer.yaml @@ -16,8 +16,8 @@ on: type: string pull_request: - branches: - - '2.6.x' + types: + - review_requested paths-ignore: - '**.md' - '**.txt' @@ -32,9 +32,11 @@ jobs: ubuntu-sanitizer-run: name: Sanitizer Evaluation - if: ${{ !(contains(github.event.pull_request.labels.*.name, 'no-test') || - contains(github.event.pull_request.labels.*.name, 'skip-ci') || - contains(github.event.pull_request.labels.*.name, 'conflicts')) }} + if: ${{ ( + !contains(github.event.pull_request.labels.*.name, 'skip-ci') && + !contains(github.event.pull_request.labels.*.name, 'no-test') && + !contains(github.event.pull_request.labels.*.name, 'conflicts') + ) }} runs-on: ubuntu-22.04 @@ -47,6 +49,14 @@ jobs: CXX: g++-12 steps: + - name: Add ci-pending label if PR + if: ${{ github.event_name == 'pull_request' }} + uses: eProsima/eProsima-CI/external/add_labels@v0 + with: + labels: ci-pending + number: ${{ github.event.number }} + repo: eProsima/Fast-DDS + # https://github.com/actions/runner-images/issues/9491 - name: Fix kernel mmap rnd bits run: sudo sysctl vm.mmap_rnd_bits=28 diff --git a/.github/workflows/ubuntu-ci.yml b/.github/workflows/ubuntu-ci.yml index ae94ed5ec5e..463ec989128 100644 --- a/.github/workflows/ubuntu-ci.yml +++ b/.github/workflows/ubuntu-ci.yml @@ -24,8 +24,16 @@ on: type: string required: true + pull_request: + types: + - review_requested + paths-ignore: + - '**.md' + - '**.txt' + - '!**/CMakeLists.txt' + concurrency: - group: ${{ github.workflow }} + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: @@ -37,6 +45,10 @@ jobs: os-image: - 'ubuntu-20.04' + if: ${{ ( + !contains(github.event.pull_request.labels.*.name, 'skip-ci') && + !contains(github.event.pull_request.labels.*.name, 'conflicts') + ) }} uses: ./.github/workflows/reusable-ubuntu-ci.yml with: os-image: ${{ matrix.os-image }} diff --git a/.github/workflows/windows-ci.yml b/.github/workflows/windows-ci.yml index dbd7222410d..6dace9b6be2 100644 --- a/.github/workflows/windows-ci.yml +++ b/.github/workflows/windows-ci.yml @@ -25,8 +25,8 @@ on: required: true pull_request: - branches: - - '2.6.x' + types: + - review_requested paths-ignore: - '**.md' - '**.txt' @@ -38,9 +38,11 @@ concurrency: jobs: windows-ci: + if: ${{ ( + !contains(github.event.pull_request.labels.*.name, 'skip-ci') && + !contains(github.event.pull_request.labels.*.name, 'conflicts') + ) }} uses: ./.github/workflows/reusable-windows-ci.yml - if: ${{ !(contains(github.event.pull_request.labels.*.name, 'skip-ci') || - contains(github.event.pull_request.labels.*.name, 'conflicts')) }} with: label: ${{ inputs.label || 'windows-ci' }} colcon-args: ${{ inputs.colcon-args }}