Skip to content

Commit 013421c

Browse files
committed
ci: add package smoke test for Release preset
1 parent 4ff4b5f commit 013421c

1 file changed

Lines changed: 23 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,29 @@ jobs:
5050
cmake --build --preset ${{ matrix.preset }} --parallel
5151
env:
5252
CTEST_OUTPUT_ON_FAILURE: 1
53+
- name: Package smoke test
54+
if: matrix.preset == 'release'
55+
run: |
56+
set -euo pipefail
57+
INSTALL_DIR="$(mktemp -d)"
58+
cmake --install "${{ matrix.build_dir }}" --prefix "$INSTALL_DIR"
59+
60+
CONSUMER_DIR="$(mktemp -d)"
61+
cat > "$CONSUMER_DIR/CMakeLists.txt" <<'CMAKE'
62+
cmake_minimum_required(VERSION 3.20)
63+
project(itlabai_consumer LANGUAGES CXX)
64+
find_package(ITLabAI CONFIG REQUIRED)
65+
add_executable(consumer main.cpp)
66+
target_link_libraries(consumer PRIVATE ITLabAI::graph)
67+
set_target_properties(consumer PROPERTIES CXX_STANDARD 20 CXX_STANDARD_REQUIRED YES)
68+
CMAKE
69+
cat > "$CONSUMER_DIR/main.cpp" <<'CPP'
70+
#include <graph/graph.hpp>
71+
int main() { it_lab_ai::Graph g; (void)g; return 0; }
72+
CPP
73+
74+
cmake -S "$CONSUMER_DIR" -B "$CONSUMER_DIR/build" -DCMAKE_PREFIX_PATH="$INSTALL_DIR" -DCMAKE_BUILD_TYPE=Release
75+
cmake --build "$CONSUMER_DIR/build" --parallel
5376
- name: Prepare ALL libs
5477
run: |
5578
mkdir -p ${{ matrix.build_dir }}/bin/all_libs

0 commit comments

Comments
 (0)