Skip to content

Commit 28ecf06

Browse files
committed
test
1 parent a2df66b commit 28ecf06

File tree

2 files changed

+51
-97
lines changed

2 files changed

+51
-97
lines changed

.github/workflows/pr_push.yml

Lines changed: 0 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -16,77 +16,7 @@ permissions:
1616
contents: read
1717

1818
jobs:
19-
CodeChecks:
20-
uses: ./.github/workflows/reusable_checks.yml
21-
DocsBuild:
22-
uses: ./.github/workflows/reusable_docs_build.yml
23-
FastBuild:
24-
name: Fast builds
25-
needs: [CodeChecks, DocsBuild]
26-
uses: ./.github/workflows/reusable_fast.yml
27-
Build:
28-
name: Basic builds
29-
needs: [FastBuild]
30-
uses: ./.github/workflows/reusable_basic.yml
31-
DevDax:
32-
needs: [FastBuild]
33-
uses: ./.github/workflows/reusable_dax.yml
34-
MultiNuma:
35-
needs: [FastBuild]
36-
uses: ./.github/workflows/reusable_multi_numa.yml
37-
L0:
38-
needs: [Build]
39-
uses: ./.github/workflows/reusable_gpu.yml
40-
with:
41-
name: "LEVEL_ZERO"
42-
shared_lib: "['ON']"
43-
CUDA:
44-
needs: [Build]
45-
uses: ./.github/workflows/reusable_gpu.yml
46-
with:
47-
name: "CUDA"
48-
shared_lib: "['ON']"
49-
Sanitizers:
50-
needs: [FastBuild]
51-
uses: ./.github/workflows/reusable_sanitizers.yml
52-
QEMU:
53-
needs: [FastBuild]
54-
uses: ./.github/workflows/reusable_qemu.yml
55-
with:
56-
short_run: true
57-
ProxyLib:
58-
needs: [Build]
59-
uses: ./.github/workflows/reusable_proxy_lib.yml
60-
Valgrind:
61-
needs: [Build]
62-
uses: ./.github/workflows/reusable_valgrind.yml
63-
Coverage:
64-
# total coverage (on upstream only)
65-
if: github.repository == 'oneapi-src/unified-memory-framework'
66-
needs: [Build, DevDax, L0, CUDA, MultiNuma, QEMU, ProxyLib]
67-
uses: ./.github/workflows/reusable_coverage.yml
68-
secrets: inherit
69-
with:
70-
trigger: "${{github.event_name}}"
71-
Coverage_partial:
72-
# partial coverage (on forks)
73-
if: github.repository != 'oneapi-src/unified-memory-framework'
74-
needs: [Build, QEMU, ProxyLib]
75-
uses: ./.github/workflows/reusable_coverage.yml
76-
CodeQL:
77-
needs: [Build]
78-
permissions:
79-
contents: read
80-
security-events: write
81-
uses: ./.github/workflows/reusable_codeql.yml
82-
Trivy:
83-
needs: [Build]
84-
permissions:
85-
contents: read
86-
security-events: write
87-
uses: ./.github/workflows/reusable_trivy.yml
8819
Compatibility:
89-
needs: [Build]
9020
uses: ./.github/workflows/reusable_compatibility.yml
9121
strategy:
9222
matrix:

.github/workflows/reusable_compatibility.yml

Lines changed: 51 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -36,61 +36,66 @@ jobs:
3636
working-directory: ${{github.workspace}}/tag_version
3737
run: .github/scripts/install_hwloc.sh
3838

39-
- name: Configure "tag" UMF build
40-
working-directory: ${{github.workspace}}/tag_version
39+
- name: Checkout latest UMF version
40+
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
41+
with:
42+
fetch-depth: 0
43+
path: ${{github.workspace}}/latest_version
44+
45+
- name: Configure latest UMF build
46+
working-directory: ${{github.workspace}}/latest_version
4147
run: >
4248
cmake
43-
-B ${{github.workspace}}/tag_version/build
49+
-B ${{github.workspace}}/latest_version/build
50+
-DCMAKE_INSTALL_PREFIX=_install
4451
-DCMAKE_BUILD_TYPE=Debug
4552
-DUMF_BUILD_SHARED_LIBRARY=ON
4653
-DCMAKE_C_COMPILER=gcc
4754
-DCMAKE_CXX_COMPILER=g++
48-
-DUMF_BUILD_TESTS=ON
49-
-DUMF_BUILD_EXAMPLES=ON
55+
-DUMF_BUILD_TESTS=OFF
5056
-DUMF_BUILD_LEVEL_ZERO_PROVIDER=ON
5157
-DUMF_BUILD_CUDA_PROVIDER=ON
5258
-DUMF_FORMAT_CODE_STYLE=OFF
5359
-DUMF_DEVELOPER_MODE=ON
5460
-DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON
55-
-DUMF_BUILD_LIBUMF_POOL_DISJOINT=ON
56-
-DUMF_TESTS_FAIL_ON_SKIP=ON
57-
58-
- name: Build "tag" UMF
59-
working-directory: ${{github.workspace}}/tag_version
60-
run: |
61-
cmake --build ${{github.workspace}}/tag_version/build -j $(nproc)
6261
63-
- name: Run "tag" UMF tests
64-
working-directory: ${{github.workspace}}/tag_version/build
62+
- name: Build latest UMF
63+
working-directory: ${{github.workspace}}/latest_version
6564
run: |
66-
LD_LIBRARY_PATH=${{github.workspace}}/tag_version/build/lib/ ctest --output-on-failure
67-
68-
- name: Checkout latest UMF version
69-
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
70-
with:
71-
fetch-depth: 0
72-
path: ${{github.workspace}}/latest_version
65+
cmake --build ${{github.workspace}}/latest_version/build -j $(nproc)
7366
74-
- name: Configure latest UMF build
67+
- name: Install latest UMF
7568
working-directory: ${{github.workspace}}/latest_version
69+
run: sudo cmake --install ${{github.workspace}}/latest_version/build --config Debug
70+
71+
- name: Configure "tag" UMF build
72+
working-directory: ${{github.workspace}}/tag_version
7673
run: >
7774
cmake
78-
-B ${{github.workspace}}/latest_version/build
75+
-B ${{github.workspace}}/tag_version/build
7976
-DCMAKE_BUILD_TYPE=Debug
8077
-DUMF_BUILD_SHARED_LIBRARY=ON
8178
-DCMAKE_C_COMPILER=gcc
8279
-DCMAKE_CXX_COMPILER=g++
83-
-DUMF_BUILD_TESTS=OFF
80+
-DUMF_BUILD_TESTS=ON
81+
-DUMF_BUILD_EXAMPLES=ON
8482
-DUMF_BUILD_LEVEL_ZERO_PROVIDER=ON
8583
-DUMF_BUILD_CUDA_PROVIDER=ON
8684
-DUMF_FORMAT_CODE_STYLE=OFF
8785
-DUMF_DEVELOPER_MODE=ON
8886
-DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON
87+
-DUMF_BUILD_LIBUMF_POOL_DISJOINT=ON
88+
-DUMF_TESTS_FAIL_ON_SKIP=ON
8989
90-
- name: Build latest UMF
91-
working-directory: ${{github.workspace}}/latest_version
90+
- name: Build "tag" UMF
91+
working-directory: ${{github.workspace}}/tag_version
9292
run: |
93-
cmake --build ${{github.workspace}}/latest_version/build -j $(nproc)
93+
cmake --build ${{github.workspace}}/tag_version/build -j $(nproc)
94+
95+
- name: Run "tag" UMF tests
96+
working-directory: ${{github.workspace}}/tag_version/build
97+
run: |
98+
LD_LIBRARY_PATH=${{github.workspace}}/tag_version/build/lib/ ctest --output-on-failure
9499
95100
- name: Run "tag" UMF tests with latest UMF libs (warnings enabled)
96101
working-directory: ${{github.workspace}}/tag_version/build
@@ -103,6 +108,25 @@ jobs:
103108
GTEST_FILTER="-*umfIpcTest.GetPoolByOpenedHandle*"
104109
ctest --verbose -E "umf-mempolicy"
105110
111+
- name: build and run examples using latest UMF libs
112+
working-directory: ${{github.workspace}}/tag_version
113+
run: |
114+
EXAMPLES_EXCLUDE_LIST="cmake|cuda"
115+
rm -rf build
116+
rm -rf include
117+
mkdir _examples
118+
cd _examples
119+
EXAMPLES_LIST=$(find examples -maxdepth 1 -mindepth 1 -type d | grep -Ev $EXAMPLES_EXCLUDE_LIST | xargs -n 1 basename)
120+
echo "testing examples: $EXAMPLES_LIST"
121+
for EXAMPLE_NAME in $EXAMPLES_LIST; do
122+
cd ${{github.workspace}}/tag_version
123+
mkdir -p _examples/$EXAMPLE_NAME;
124+
cd _examples/$EXAMPLE_NAME;
125+
CMAKE_PREFIX_PATH=${{github.workspace}}/latest_version/_install cmake ../../examples/$EXAMPLE_NAME;
126+
make;
127+
./umf_example_$EXAMPLE_NAME;
128+
done
129+
106130
windows:
107131
name: Windows
108132
env:

0 commit comments

Comments
 (0)