22name : Nightly
33
44# This job is run at 00:00 UTC every day or on demand.
5- on :
6- workflow_dispatch :
7- schedule :
8- - cron : ' 0 0 * * *'
5+ on : workflow_call
6+ # workflow_dispatch:
7+ # schedule:
8+ # - cron: '0 0 * * *'
99
1010permissions :
1111 contents : read
@@ -27,28 +27,26 @@ jobs:
2727 with :
2828 fetch-depth : 0
2929
30- - name : Install apt packages
30+ - name : Build Docker image
3131 run : |
32- sudo apt-get update
33- sudo apt-get install -y cmake hwloc libhwloc-dev libnuma-dev libtbb-dev
32+ docker build -f .github/docker/ubuntu-20.04.Dockerfile -t umf-ubuntu-20.04 .
3433
35- - name : Configure CMake
36- run : >
37- cmake
38- -B ${{github.workspace}}/build
39- -DCMAKE_BUILD_TYPE=${{matrix.build_type}}
40- -DCMAKE_C_COMPILER=${{matrix.compiler.c}}
41- -DCMAKE_CXX_COMPILER=${{matrix.compiler.cxx}}
42- -DUMF_TESTS_FAIL_ON_SKIP=ON
43- -DUMF_DEVELOPER_MODE=ON
44- -DUMF_BUILD_FUZZTESTS=ON
45-
46- - name : Build
47- run : cmake --build ${{github.workspace}}/build --config ${{matrix.build_type}} --verbose -j$(nproc)
48-
49- - name : Fuzz long test
50- working-directory : ${{github.workspace}}/build
51- run : ctest -C ${{matrix.build_type}} --output-on-failure --verbose -L "fuzz-long"
34+ - name : Fuzz long test in Docker container
35+ run : |
36+ docker run --rm -v ${{github.workspace}}:/workspace -w /workspace umf-ubuntu-20.04 bash -c "
37+ sudo apt-get update &&
38+ sudo apt-get install -y cmake hwloc libhwloc-dev libnuma-dev libtbb-dev &&
39+ cmake
40+ -B ${{github.workspace}}/build
41+ -DCMAKE_BUILD_TYPE=${{matrix.build_type}}
42+ -DCMAKE_C_COMPILER=${{matrix.compiler.c}}
43+ -DCMAKE_CXX_COMPILER=${{matrix.compiler.cxx}}
44+ -DUMF_TESTS_FAIL_ON_SKIP=ON
45+ -DUMF_DEVELOPER_MODE=ON
46+ -DUMF_BUILD_FUZZTESTS=ON &&
47+ cmake --build ${{github.workspace}}/build --config ${matrix.build_type} --verbose -j$(nproc) &&
48+ ctest -C ${{matrix.build_type}} --output-on-failure --verbose -L "fuzz-long"
49+ "
5250
5351 valgrind :
5452 name : Valgrind
@@ -64,30 +62,29 @@ jobs:
6462 with :
6563 fetch-depth : 0
6664
67- - name : Install apt packages
65+ - name : Build Docker image
6866 run : |
69- sudo apt-get update
70- sudo apt-get install -y cmake hwloc libhwloc-dev libnuma-dev libtbb-dev valgrind
67+ docker build -f .github/docker/ubuntu-20.04.Dockerfile -t umf-ubuntu-20.04 .
7168
72- - name : Configure CMake
73- run : >
74- cmake
75- -B ${{github.workspace}}/build
76- -DCMAKE_BUILD_TYPE=Debug
77- -DUMF_FORMAT_CODE_STYLE=OFF
78- -DUMF_DEVELOPER_MODE=ON
79- -DUMF_BUILD_LIBUMF_POOL_DISJOINT=ON
80- -DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON
81- -DUMF_BUILD_LEVEL_ZERO_PROVIDER=OFF
82- -DUMF_BUILD_CUDA_PROVIDER=OFF
83- -DUMF_USE_VALGRIND=1
84- -DUMF_TESTS_FAIL_ON_SKIP=ON
85-
86- - name : Build
87- run : cmake --build ${{github.workspace}}/build --config Debug -j$(nproc)
88-
89- - name : Run tests under valgrind
90- run : ${{github.workspace}}/test/test_valgrind.sh ${{github.workspace}} ${{github.workspace}}/build ${{matrix.tool}}
69+ - name : Run tests under valgrind in Docker
70+ run : |
71+ docker run --rm -v ${{github.workspace}}:/workspace -w /workspace umf-ubuntu-20.04 bash -c "
72+ sudo apt-get update &&
73+ sudo apt-get install -y cmake hwloc libhwloc-dev libnuma-dev libtbb-dev valgrind &&
74+ cmake
75+ -B ${{github.workspace}}/build
76+ -DCMAKE_BUILD_TYPE=Debug
77+ -DUMF_FORMAT_CODE_STYLE=OFF
78+ -DUMF_DEVELOPER_MODE=ON
79+ -DUMF_BUILD_LIBUMF_POOL_DISJOINT=ON
80+ -DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON
81+ -DUMF_BUILD_LEVEL_ZERO_PROVIDER=OFF
82+ -DUMF_BUILD_CUDA_PROVIDER=OFF
83+ -DUMF_USE_VALGRIND=1
84+ -DUMF_TESTS_FAIL_ON_SKIP=ON &&
85+ cmake --build ${{github.workspace}}/build --config Debug -j$(nproc) &&
86+ ${{github.workspace}}/test/test_valgrind.sh ${{github.workspace}} ${{github.workspace}}/build ${{matrix.tool}}
87+ "
9188
9289 # TODO fix #843
9390 # icx:
0 commit comments