Skip to content

Use llvm project

Use llvm project #131

Workflow file for this run

name: pull-request
on: # yamllint disable-line rule:truthy
push:
branches:
- master
paths-ignore:
- "**.md"
- "**/docs/**"
- "**/LICENSE"
- "**/NOTICE"
- "**/benchmark/**"
- "version.txt"
- "build.sh"
pull_request:
types:
- opened
- synchronize
- reopened
paths-ignore:
- "**.md"
- "**/docs/**"
- "**/LICENSE"
- "**/NOTICE"
- "**/benchmark/**"
- "version.txt"
- "build.sh"
workflow_dispatch:
inputs:
pr:
description: "Pull request#"
required: false
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: RelWithDebInfo
# Cancel the previous workflow run in this PR.
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
check-style:
uses: ./.github/workflows/check-style.yml
build:
uses: ./.github/workflows/build.yml
with:
build_type: RelWithDebInfo
sanitize: none
needs: check-style
unit-test:
uses: ./.github/workflows/unit-test.yml
with:
sanitize: none
needs: build
integration-test:
uses: ./.github/workflows/integration-test.yml
with:
sanitize: none
needs: build
build-tsan:
uses: ./.github/workflows/build.yml
with:
build_type: RelWithDebInfo
sanitize: tsan
needs: check-style
tsan-unit-test:
uses: ./.github/workflows/unit-test.yml
with:
sanitize: tsan
needs: build-tsan
tsan-integration-test:
uses: ./.github/workflows/integration-test.yml
with:
sanitize: tsan
needs: build-tsan
build-asan:
uses: ./.github/workflows/build.yml
with:
build_type: RelWithDebInfo
sanitize: asan
needs: check-style
asan-unit-test:
uses: ./.github/workflows/unit-test.yml
with:
sanitize: asan
needs: build-asan
asan-integration-test:
uses: ./.github/workflows/integration-test.yml
with:
sanitize: asan
needs: build-asan
build-msan:
uses: ./.github/workflows/build.yml
with:
build_type: RelWithDebInfo
sanitize: msan
needs: check-style
msan-unit-test:
uses: ./.github/workflows/unit-test.yml
with:
sanitize: msan
needs: build-msan
msan-integration-test:
uses: ./.github/workflows/integration-test.yml
with:
sanitize: msan
needs: build-msan
build-ubsan:
uses: ./.github/workflows/build.yml
with:
build_type: RelWithDebInfo
sanitize: ubsan
needs: check-style
ubsan-unit-test:
uses: ./.github/workflows/unit-test.yml
with:
sanitize: ubsan
needs: build-ubsan
ubsan-integration-test:
uses: ./.github/workflows/integration-test.yml
with:
sanitize: ubsan
needs: build-ubsan
unit-test-report:
if: always() && github.event_name == 'pull_request'
uses: ./.github/workflows/report.yml
with:
test_type: unit
needs: [unit-test, tsan-unit-test, asan-unit-test, msan-unit-test, ubsan-unit-test]
integration-test-report:
if: always() && github.event_name == 'pull_request'
uses: ./.github/workflows/report.yml
with:
test_type: integration
needs: [integration-test, tsan-integration-test, asan-integration-test, msan-integration-test, ubsan-integration-test]
macos-build-and-unit-test:
uses: ./.github/workflows/macos.yml
needs: check-style