diff --git a/.github/workflows/README.md b/.github/workflows/README.md index 7273a1d8435..9dfa90f0eb6 100644 --- a/.github/workflows/README.md +++ b/.github/workflows/README.md @@ -137,6 +137,13 @@ _Action:_ Build the Java Client Library and runs [the system tests](https://gith _Recovery:_ Manually trigger the action on the desired branch. +### all-green [🔗](all-green.yaml) + +_Trigger:_ Any pull request. + +_Action:_ This action will check all other jobs (Github action, Gitlab, CircleCi), and will fail if any of them fails. This action got an `ignored` paraemters to exclude some jobs if they are temprorary failing. The purpose of this job is to be required for merges, achieving Green CI Policy. + +_Recovery:_ Manually trigger the action on the desired branch. ## Maintenance diff --git a/.github/workflows/all-green.yml b/.github/workflows/all-green.yml new file mode 100644 index 00000000000..c9e12e18b06 --- /dev/null +++ b/.github/workflows/all-green.yml @@ -0,0 +1,36 @@ +name: Check Pull Request CI Status + +on: + pull_request: + types: + - opened + - synchronize + - reopened + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +permissions: + checks: read + statuses: read + +jobs: + all-jobs-are-green: + runs-on: ubuntu-latest + steps: + - name: Run Ensure CI Success + uses: DataDog/ensure-ci-success@f40e6ffd8e60280d478b9b92209aaa30d3d56895 + with: + initial-delay-seconds: "1000" + max-retries: "60" + ignored-name-patterns: | + dd-gitlab/default-pipeline + dd-gitlab/check_inst 4/4 + dd-gitlab/muzzle .* + +# ignored jobs : +# +# * dd-gitlab/default-pipeline => success rate of 70% (needs an owner) +# * dd-gitlab/check_inst 4/4 => success rate of 78% (needs an owner) +# * dd-gitlab/muzzle .* => success rate of ~85% (needs an owner)