3232 with :
3333 fetch-depth : 0
3434
35+ - name : Debug directory structure
36+ run : |
37+ echo "=== Directory Structure ==="
38+ ls -la
39+ echo "=== OpenVX-cts structure ==="
40+ ls -la OpenVX-cts/ || echo "No OpenVX-cts directory!"
41+ echo "=== Current working directory ==="
42+ pwd
43+
3544 - name : Install system dependencies
3645 run : |
3746 sudo apt-get update
5160 rustc --version
5261 cargo --version
5362
54- - name : Cache Cargo registry
55- uses : actions/cache@v4
56- with :
57- path : ~/.cargo/registry
58- key : ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}
59- restore-keys : |
60- ${{ runner.os }}-cargo-registry-
61-
62- - name : Cache Cargo index
63- uses : actions/cache@v4
64- with :
65- path : ~/.cargo/git
66- key : ${{ runner.os }}-cargo-index-${{ hashFiles('**/Cargo.lock') }}
67- restore-keys : |
68- ${{ runner.os }}-cargo-index-
69-
70- - name : Cache Cargo build
71- uses : actions/cache@v4
72- with :
73- path : target
74- key : ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }}
75- restore-keys : |
76- ${{ runner.os }}-cargo-build-target-
77-
78- - name : Cache OpenVX CTS build
79- id : cache-cts
80- uses : actions/cache@v4
81- with :
82- path : OpenVX-cts/build
83- key : ${{ runner.os }}-cts-${{ hashFiles('OpenVX-cts/CMakeLists.txt') }}
84-
8563 - name : Build rustVX
8664 run : |
8765 source $HOME/.cargo/env
@@ -90,53 +68,47 @@ jobs:
9068 echo "Build complete. Library files:"
9169 ls -la target/release/*.so target/release/*.rlib 2>/dev/null || true
9270
93- - name : Build OpenVX CTS (if not cached)
94- if : steps.cache-cts.outputs.cache-hit != 'true'
71+ - name : Build OpenVX CTS
9572 run : |
96- echo "Building OpenVX CTS... "
73+ echo "=== Building OpenVX CTS === "
9774
98- # Create symlink for include directory if needed
99- if [ ! -d "openvx" ]; then
100- echo "Creating openvx symlink..."
101- ln -sf include openvx 2>/dev/null || true
75+ # Check OpenVX-cts directory
76+ if [ ! -d "OpenVX-cts" ]; then
77+ echo "ERROR: OpenVX-cts directory not found!"
78+ ls -la
79+ exit 1
10280 fi
10381
10482 cd OpenVX-cts
105- mkdir -p build
106- cd build
10783
108- # Configure with CMake
109- echo "Configuring with CMake..."
110- cmake .. \
111- -DCMAKE_BUILD_TYPE=Release \
112- -DCMAKE_C_COMPILER=gcc \
113- -DCMAKE_CXX_COMPILER=g++ \
114- 2>&1
115-
116- if [ $? -ne 0 ]; then
117- echo "CMake configuration failed!"
118- cat CMakeFiles/CMakeError.log 2>/dev/null | head -50 || echo "No error log found"
84+ # Check for CMakeLists.txt
85+ if [ ! -f "CMakeLists.txt" ]; then
86+ echo "ERROR: CMakeLists.txt not found!"
87+ ls -la
11988 exit 1
12089 fi
12190
122- echo "Building with Make..."
123- make -j$(nproc) 2>&1
91+ mkdir -p build
92+ cd build
12493
125- if [ $? -ne 0 ]; then
126- echo "Build failed!"
94+ # Configure with verbose output
95+ echo "Running cmake..."
96+ cmake .. -DCMAKE_BUILD_TYPE=Release 2>&1 || {
97+ echo "CMAKE FAILED!"
12798 exit 1
128- fi
99+ }
129100
130- echo "CTS build complete. Checking for binary..."
131- ls -la bin/vx_test_conformance 2>/dev/null || echo "Binary not found in bin/"
101+ # Build
102+ echo "Running make..."
103+ make -j$(nproc) 2>&1 || {
104+ echo "MAKE FAILED!"
105+ exit 1
106+ }
107+
108+ echo "Build complete. Listing binaries:"
109+ ls -la bin/ 2>/dev/null || echo "No bin directory"
132110 find . -name "vx_test_conformance" -type f 2>/dev/null
133111
134- - name : Prepare test environment
135- run : |
136- echo "Setting up test environment..."
137- echo "RUSTVX_LIBRARY_PATH=${{ github.workspace }}/target/release" >> $GITHUB_ENV
138- echo "CTS_BUILD_DIR=${{ github.workspace }}/OpenVX-cts/build" >> $GITHUB_ENV
139-
140112 - name : Run Vision Conformance Tests
141113 id : run_tests
142114 continue-on-error : true
@@ -146,29 +118,32 @@ jobs:
146118 echo "Running OpenVX Vision Conformance Tests"
147119 echo "========================================"
148120
149- cd $CTS_BUILD_DIR
121+ # Find CTS build directory
122+ CTS_DIR="OpenVX-cts/build"
123+ if [ ! -d "$CTS_DIR" ]; then
124+ echo "ERROR: CTS build directory not found!"
125+ exit 1
126+ fi
127+
128+ cd "$CTS_DIR"
129+
130+ # Check for test binary
131+ if [ ! -f "bin/vx_test_conformance" ]; then
132+ echo "Test binary not found, searching..."
133+ find . -name "vx_test_conformance" -type f 2>/dev/null
134+ ls -la bin/ 2>/dev/null || true
135+ fi
150136
151137 # Set library path for the conformance tests
152138 export LD_LIBRARY_PATH=${{ github.workspace }}/target/release:$LD_LIBRARY_PATH
153139
154140 echo "Library path: $LD_LIBRARY_PATH"
155- echo "Checking for rustVX library..."
156- ls -la ${{ github.workspace }}/target/release/*.so 2>/dev/null || echo "No .so files found"
157141
158142 # Create output directory for results
159143 mkdir -p ${{ github.workspace }}/test-results
160144
161- # Run tests with timeout and capture output
162- TEST_FILTER="${{ github.event.inputs.test_filter }}"
163- VERBOSE="${{ github.event.inputs.verbose }}"
164-
165- if [ -n "$TEST_FILTER" ]; then
166- echo "Running filtered tests: $TEST_FILTER"
167- timeout 300 ./bin/vx_test_conformance "$TEST_FILTER" 2>&1 | tee ${{ github.workspace }}/test-results/vision_test_output.txt || true
168- else
169- echo "Running all Vision tests..."
170- timeout 300 ./bin/vx_test_conformance 2>&1 | tee ${{ github.workspace }}/test-results/vision_test_output.txt || true
171- fi
145+ # Run tests
146+ timeout 300 ./bin/vx_test_conformance 2>&1 | tee ${{ github.workspace }}/test-results/vision_test_output.txt || true
172147
173148 echo "Test execution completed."
174149
@@ -194,12 +169,6 @@ jobs:
194169 FAIL_COUNT=$(grep -c "\[ !FAILED! \]" "$OUTPUT_FILE" 2>/dev/null || echo "0")
195170 echo "Tests failed: $FAIL_COUNT"
196171
197- # Check for crashes
198- if grep -q "double free\|segmentation fault\|core dumped" "$OUTPUT_FILE" 2>/dev/null; then
199- echo "⚠️ WARNING: Tests crashed!"
200- echo "CRASH_DETECTED=true" >> $GITHUB_ENV
201- fi
202-
203172 # Extract test summary
204173 echo "========================================" | tee ${{ github.workspace }}/test-results/summary.txt
205174 echo "Vision Conformance Test Summary" | tee -a ${{ github.workspace }}/test-results/summary.txt
@@ -246,10 +215,5 @@ jobs:
246215 echo "- **Build Type:** Release" >> $GITHUB_STEP_SUMMARY
247216 echo "- **CTS Build:** OpenVX Conformance Test Suite" >> $GITHUB_STEP_SUMMARY
248217
249- if [ "${{ env.CRASH_DETECTED }}" == "true" ]; then
250- echo "" >> $GITHUB_STEP_SUMMARY
251- echo "⚠️ **Warning:** Tests encountered crashes. See artifacts for details." >> $GITHUB_STEP_SUMMARY
252- fi
253-
254218 echo "" >> $GITHUB_STEP_SUMMARY
255219 echo "📥 **Download full logs:** See Artifacts section above" >> $GITHUB_STEP_SUMMARY
0 commit comments