2
2
name : Nightly
3
3
4
4
# 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 * * *'
9
9
10
10
permissions :
11
11
contents : read
@@ -27,28 +27,26 @@ jobs:
27
27
with :
28
28
fetch-depth : 0
29
29
30
- - name : Install apt packages
30
+ - name : Build Docker image
31
31
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 .
34
33
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
+ "
52
50
53
51
valgrind :
54
52
name : Valgrind
@@ -64,30 +62,29 @@ jobs:
64
62
with :
65
63
fetch-depth : 0
66
64
67
- - name : Install apt packages
65
+ - name : Build Docker image
68
66
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 .
71
68
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
+ "
91
88
92
89
# TODO fix #843
93
90
# icx:
0 commit comments