Skip to content

Add conditional recipients to notification rule #17185

Add conditional recipients to notification rule

Add conditional recipients to notification rule #17185

Workflow file for this run

name: Run Tests
permissions:
contents: read
env:
GIT_AUTHOR_EMAIL: "[email protected]"
GIT_AUTHOR_NAME: "ci.datadog-api-spec"
on:
pull_request:
branches:
- v2
schedule:
- cron: "0 5 * * *"
concurrency:
group: unit-split-package-${{ github.head_ref }}
cancel-in-progress: true
jobs:
pre-commit:
if: >
(github.event.pull_request.draft == false &&
!contains(github.event.pull_request.labels.*.name, 'ci/skip') &&
!contains(github.event.pull_request.head.ref, 'datadog-api-spec/test/')) ||
github.event_name == 'schedule'
uses: ./.github/workflows/reusable-pre-commit.yml
with:
enable-commit-changes: true
secrets:
PIPELINE_GITHUB_APP_ID: ${{ secrets.PIPELINE_GITHUB_APP_ID }}
PIPELINE_GITHUB_APP_PRIVATE_KEY: ${{ secrets.PIPELINE_GITHUB_APP_PRIVATE_KEY }}
test:
if: >
(github.event.pull_request.draft == false &&
!contains(github.event.pull_request.labels.*.name, 'ci/skip') &&
!contains(github.event.pull_request.head.ref, 'datadog-api-spec/test/')) ||
github.event_name == 'schedule'
uses: ./.github/workflows/reusable-typescript-test.yml
with:
node-versions: '["18", "20"]'
platforms: '["ubuntu-latest"]'
test-script: './run-tests.sh'
secrets:
PIPELINE_GITHUB_APP_ID: ${{ secrets.PIPELINE_GITHUB_APP_ID }}
PIPELINE_GITHUB_APP_PRIVATE_KEY: ${{ secrets.PIPELINE_GITHUB_APP_PRIVATE_KEY }}
# examples:
# if: >
# (github.event.pull_request.draft == false &&
# !contains(github.event.pull_request.labels.*.name, 'ci/skip') &&
# !contains(github.event.pull_request.head.ref, 'datadog-api-spec/test/')) ||
# github.event_name == 'schedule'
# uses: ./.github/workflows/reusable-examples.yml
# with:
# examples-script: './check-examples.sh'
# node-version: '16'
report:
runs-on: ubuntu-latest
if: always() && github.event_name == 'pull_request' && contains(github.event.pull_request.head.ref, 'datadog-api-spec/v2/generated/')
needs:
- test
# - examples
steps:
- name: Get GitHub App token
if: github.event_name == 'pull_request'
id: get_token
uses: actions/create-github-app-token@v1
with:
app-id: ${{ secrets.PIPELINE_GITHUB_APP_ID }}
private-key: ${{ secrets.PIPELINE_GITHUB_APP_PRIVATE_KEY }}
repositories: datadog-api-spec
- name: Get pull request number
id: get_pr_number
run: |
spec_pr=$(echo "${{ github.event.pull_request.head.ref }}" | sed 's/.*generated\/\([0-9]*\).*/\1/')
echo "spec_pr=${spec_pr}" >> $GITHUB_OUTPUT
- name: Post status check
uses: DataDog/github-actions/post-status-check@v2
with:
github-token: ${{ steps.get_token.outputs.token }}
repo: datadog-api-spec
# status: ${{ (needs.test.result == 'cancelled' || needs.examples.result == 'cancelled') && 'pending' || (needs.test.result == 'success' && needs.examples.result == 'success') && 'success' || 'failure' }}
status: ${{ needs.test.result == 'cancelled' && 'pending' || needs.test.result == 'success' && 'success' || 'failure' }}
context: v2/unit
pull-request: ${{ steps.get_pr_number.outputs.spec_pr }}