Skip to content

Commit af6f680

Browse files
committed
[ci] Update functional tests to set correctly AV's nodes and templates
1 parent 5bb6db5 commit af6f680

File tree

1 file changed

+35
-12
lines changed

1 file changed

+35
-12
lines changed

.github/workflows/continuous-integration.yml

+35-12
Original file line numberDiff line numberDiff line change
@@ -94,38 +94,39 @@ jobs:
9494
- name: Functional Tests - PanoramaFisheyeHdr Pipeline
9595
working-directory: ./functional_tests
9696
run: |
97-
# clone required repos
97+
# Clone required repos
9898
git clone --branch develop https://github.com/alicevision/Meshroom.git
9999
git clone --branch main https://github.com/alicevision/dataset_panoramaFisheyeHdr.git
100100
cd Meshroom/
101-
# select meshroom branch
102101
meshroom_avBranch=$(git ls-remote --heads https://github.com/alicevision/Meshroom.git $GITHUB_HEAD_REF | cut -f 1)
103102
if [ $meshroom_avBranch != "" ]; then git checkout $meshroom_avBranch; echo "Use Meshroom/$GITHUB_HEAD_REF"; fi
103+
104+
# Set environment variables specific to Meshroom
104105
export MESHROOM_INSTALL_DIR=$PWD
106+
export MESHROOM_NODES_PATH=${MESHROOM_NODES_PATH}:${ALICEVISION_ROOT}/share/aliceVision/meshroom
107+
export MESHROOM_PIPELINE_TEMPLATES_PATH=${MESHROOM_PIPELINE_TEMPLATES_PATH}:${ALICEVISION_ROOT}/share/aliceVision/meshroom
108+
109+
# Set environment variables to find executables and libraries
105110
export PYTHONPATH=$PWD:${ALICEVISION_ROOT}/bin:${PYTHONPATH}
106111
export PATH=$PATH:${ALICEVISION_ROOT}/bin
107112
export LD_LIBRARY_PATH=${ALICEVISION_ROOT}/lib:${ALICEVISION_ROOT}/lib64:${DEPS_INSTALL_DIR}/lib64:${DEPS_INSTALL_DIR}/lib:${LD_LIBRARY_PATH}
108-
mkdir ./outputData
109-
cd bin/
110-
python3 --version
111-
pip3 --version
113+
114+
# Run the test pipeline
112115
pip3 install psutil
113-
echo "ldd aliceVision_cameraInit"
114-
ldd ${ALICEVISION_ROOT}/bin/aliceVision_cameraInit
116+
cd bin/
117+
mkdir ./outputData
115118
python3 meshroom_batch -i $PWD/../../dataset_panoramaFisheyeHdr/RAW -p panoramaFisheyeHdr -o $PWD/../outputData
116119
117120
- name: Functional Tests - SfM Quality Evaluation
118121
working-directory: ./functional_tests
119122
run: |
120123
git clone --branch master https://github.com/alicevision/SfM_quality_evaluation.git
121124
cd SfM_quality_evaluation/
122-
# checkout a specific commit to ensure repeatability
125+
# Checkout a specific commit to ensure repeatability
123126
git checkout 36e3bf2d05c64d1726cb4a0e770923794f203f98
124127
export PYTHONPATH=${ALICEVISION_ROOT}/bin:${PYTHONPATH}
125128
export LD_LIBRARY_PATH=${ALICEVISION_ROOT}/lib:${ALICEVISION_ROOT}/lib64:${DEPS_INSTALL_DIR}/lib64:${DEPS_INSTALL_DIR}/lib:${LD_LIBRARY_PATH}
126-
echo "ldd aliceVision_cameraInit"
127-
ldd ${ALICEVISION_ROOT}/bin/aliceVision_cameraInit
128-
python3 --version
129+
129130
python3 EvaluationLauncher.py -s ${ALICEVISION_ROOT}/bin -i $PWD/Benchmarking_Camera_Calibration_2008/ -o $PWD/reconstructions/ -r $PWD/results.json -v
130131
131132
- name: Python Binding - Unit Tests
@@ -135,6 +136,27 @@ jobs:
135136
pip3 install pytest
136137
pytest ./pyTests
137138
139+
- name: Meshroom Plugin - Templates validity
140+
working-directory: ./functional_tests
141+
run: |
142+
git clone https://github.com/meshroomHub/mrSegmentation.git
143+
cd Meshroom/
144+
export MESHROOM_INSTALL_DIR=$PWD
145+
export MESHROOM_NODES_PATH=${MESHROOM_NODES_PATH}:${ALICEVISION_ROOT}/share/aliceVision/meshroom:$PWD/../mrSegmentation/meshroom/nodes
146+
export MESHROOM_PIPELINE_TEMPLATES_PATH=${MESHROOM_PIPELINE_TEMPLATES_PATH}:${ALICEVISION_ROOT}/share/aliceVision/meshroom
147+
export PYTHONPATH=$PWD:${ALICEVISION_ROOT}/bin:${PYTHONPATH}
148+
export PATH=$PATH:${ALICEVISION_ROOT}/bin
149+
export LD_LIBRARY_PATH=${ALICEVISION_ROOT}/lib:${ALICEVISION_ROOT}/lib64:${DEPS_INSTALL_DIR}/lib64:${DEPS_INSTALL_DIR}/lib:${LD_LIBRARY_PATH}
150+
151+
echo "
152+
import sys
153+
from meshroom.core import test
154+
if test.checkAllTemplatesVersions():
155+
sys.exit(0)
156+
sys.exit(1)
157+
" | tee test_templatesVersions.py
158+
python3 test_templatesVersions.py
159+
138160
build-windows:
139161
runs-on: windows-latest
140162
env:
@@ -229,6 +251,7 @@ jobs:
229251
-DALICEVISION_BUILD_PHOTOMETRICSTEREO=OFF
230252
-DALICEVISION_BUILD_SEGMENTATION=OFF
231253
-DALICEVISION_BUILD_SWIG_BINDING=ON
254+
-DALICEVISION_INSTALL_MESHROOM_PLUGIN=OFF
232255
-DBOOST_NO_CXX11=ON
233256

234257
cmakeBuildType: Release

0 commit comments

Comments
 (0)