зеркало из https://github.com/microsoft/CCF.git
84 строки
2.6 KiB
YAML
84 строки
2.6 KiB
YAML
parameters:
|
|
target: ["NoSGX", "SGX"]
|
|
|
|
env:
|
|
Hosted:
|
|
container: nosgx
|
|
pool:
|
|
vmImage: ubuntu-20.04
|
|
NoSGX:
|
|
container: nosgx
|
|
pool: 1es-dv4-focal
|
|
SGX:
|
|
container: sgx
|
|
pool: 1es-dcv2-focal
|
|
|
|
build:
|
|
common:
|
|
cmake_args: '-DCMAKE_C_COMPILER_LAUNCHER="ccache" -DCMAKE_CXX_COMPILER_LAUNCHER="ccache"'
|
|
NoSGX:
|
|
cmake_args: "-DCOMPILE_TARGETS=virtual"
|
|
SGX:
|
|
cmake_args: "-DCOMPILE_TARGETS=sgx"
|
|
debug:
|
|
cmake_args: "-DCMAKE_BUILD_TYPE=Debug -DLVI_MITIGATIONS=OFF"
|
|
perf:
|
|
cmake_args: '-DBUILD_UNIT_TESTS=OFF -DBUILD_TPCC=ON -DDISTRIBUTE_PERF_TESTS="-n local://localhost -n local://localhost"'
|
|
release:
|
|
cmake_args: "-DTLS_TEST=ON -DLONG_TESTS=ON -DENABLE_BFT=OFF"
|
|
|
|
test:
|
|
NoSGX:
|
|
ctest_args: '-LE "benchmark|perf|tlstest|vegeta|partitions|suite"'
|
|
SGX:
|
|
ctest_args: '-LE "benchmark|perf|tlstest|vegeta|partitions|suite"'
|
|
perf:
|
|
ctest_args: '-L "benchmark|perf|vegeta"'
|
|
release:
|
|
ctest_args: '-LE "partitions"'
|
|
|
|
jobs:
|
|
# Debug
|
|
- ${{ each target in parameters.target }}:
|
|
- template: common.yml
|
|
parameters:
|
|
target: ${{ target }}
|
|
env: ${{ parameters.env[target] }}
|
|
cmake_args: "${{ parameters.build.common.cmake_args }} ${{ parameters.build.debug.cmake_args }} ${{ parameters.build[target].cmake_args }}"
|
|
suffix: "Debug"
|
|
artifact_name: "${{ target }}_Debug"
|
|
ctest_filter: "${{ parameters.test[target].ctest_args }}"
|
|
|
|
# Performance
|
|
- ${{ if eq(parameters.perf_tests, 'run') }}:
|
|
- template: common.yml
|
|
parameters:
|
|
target: SGX
|
|
env: ${{ parameters.env.SGX }}
|
|
cmake_args: "${{ parameters.build.common.cmake_args }} ${{ parameters.build.perf.cmake_args }} ${{ parameters.build.SGX.cmake_args }}"
|
|
suffix: "Perf"
|
|
artifact_name: "SGX_Perf"
|
|
ctest_filter: "${{ parameters.test.perf.ctest_args }}"
|
|
|
|
# Release
|
|
- ${{ if eq(parameters.perf_or_release, 'release') }}:
|
|
- template: checks.yml
|
|
parameters:
|
|
env: ${{ parameters.env.Hosted }}
|
|
|
|
- template: common.yml
|
|
parameters:
|
|
target: SGX
|
|
env: ${{ parameters.env.SGX }}
|
|
cmake_args: "${{ parameters.build.common.cmake_args }} ${{ parameters.build.release.cmake_args }}"
|
|
suffix: "Release"
|
|
artifact_name: "SGX_Release"
|
|
ctest_filter: "${{ parameters.test.release.ctest_args }}"
|
|
|
|
- template: release.yml
|
|
parameters:
|
|
env: ${{ parameters.env.Hosted }}
|
|
depends_on:
|
|
- Checks
|
|
- SGX_Release
|