Skip to content

Commit c226c25

Browse files
authored
[ci] Use the new sofa-test action (#23)
1 parent 9850015 commit c226c25

1 file changed

Lines changed: 15 additions & 60 deletions

File tree

.github/workflows/ci.yml

Lines changed: 15 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
strategy:
2929
fail-fast: false
3030
matrix:
31-
os: [ubuntu-22.04, macos-14, windows-2022]
31+
os: [ubuntu-22.04, macos-14, windows-2022]
3232
sofa_branch: [master]
3333

3434
steps:
@@ -38,7 +38,7 @@ jobs:
3838
with:
3939
sofa_root: ${{ github.workspace }}/sofa
4040
sofa_version: ${{ matrix.sofa_branch }}
41-
sofa_scope: 'standard'
41+
sofa_scope: 'full'
4242

4343
- name: Checkout dependency source code
4444
uses: actions/checkout@v2
@@ -88,6 +88,7 @@ jobs:
8888
-DCMAKE_PREFIX_PATH=$SOFA_ROOT/lib/cmake;%GITHUB_WORKSPACE%/deps/CollisionAlgorithm/install/lib/cmake \
8989
-DCMAKE_BUILD_TYPE=Release \
9090
-DCMAKE_INSTALL_PREFIX=%GITHUB_WORKSPACE%/install \
91+
-DCMAKE_RUNTIME_OUTPUT_DIRECTORY=%WORKSPACE_BUILD_PATH% \
9192
../src \
9293
&& ninja install"
9394
else
@@ -100,6 +101,7 @@ jobs:
100101
-DCMAKE_PREFIX_PATH="$SOFA_ROOT/lib/cmake;$GITHUB_WORKSPACE/deps/CollisionAlgorithm/install/lib/cmake" \
101102
-DCMAKE_BUILD_TYPE=Release \
102103
-DCMAKE_INSTALL_PREFIX="$WORKSPACE_INSTALL_PATH" \
104+
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY="$WORKSPACE_BUILD_PATH/lib" \
103105
../src
104106
ninja install
105107
echo ${CCACHE_BASEDIR}
@@ -132,64 +134,17 @@ jobs:
132134
name: ${{ steps.sanitize.outputs.artifact_name }}
133135
path: ${{ env.WORKSPACE_ARTIFACT_PATH }}
134136

135-
- name: Set env vars for tests
136-
shell: bash
137-
run: |
138-
# Set env vars for tests
139-
if [[ "$RUNNER_OS" == "Windows" ]]; then
140-
echo "$WORKSPACE_ARTIFACT_PATH/lib" >> $GITHUB_PATH
141-
echo "$WORKSPACE_ARTIFACT_PATH/bin" >> $GITHUB_PATH
142-
echo "$SOFA_ROOT/plugins/SofaPython3/bin" >> $GITHUB_PATH
143-
echo "SOFA_PLUGIN_PATH=$WORKSPACE_ARTIFACT_PATH/bin;$GITHUB_WORKSPACE/deps/CollisionAlgorithm/install/bin" | tee -a $GITHUB_ENV
144-
else
145-
echo "SOFA_PLUGIN_PATH=$WORKSPACE_ARTIFACT_PATH/lib:$GITHUB_WORKSPACE/deps/CollisionAlgorithm/install/lib" | tee -a $GITHUB_ENV
146-
fi
147-
148-
if [[ "$RUNNER_OS" == "macOS" ]]; then
149-
echo "DYLD_LIBRARY_PATH=$WORKSPACE_ARTIFACT_PATH/lib:$SOFA_ROOT/lib:$GITHUB_WORKSPACE/deps/CollisionAlgorithm/install/lib:$SOFA_ROOT/plugins/SofaPython3/lib:$DYLD_LIBRARY_PATH" | tee -a $GITHUB_ENV
150-
fi
151-
152-
if [[ "$RUNNER_OS" == "Linux" ]]; then
153-
echo "LD_LIBRARY_PATH=$WORKSPACE_ARTIFACT_PATH/lib:$SOFA_ROOT/lib:$GITHUB_WORKSPACE/deps/CollisionAlgorithm/install/lib:$SOFA_ROOT/plugins/SofaPython3/lib:$LD_LIBRARY_PATH" | tee -a $GITHUB_ENV
154-
fi
155-
ls -R $GITHUB_WORKSPACE/deps/CollisionAlgorithm/
156-
157-
# - name: Check environment for tests
158-
# shell: bash
159-
# run: |
160-
# echo '------ ls -la "$WORKSPACE_SRC_PATH" ------'
161-
# ls -la "$WORKSPACE_SRC_PATH"
162-
# echo '------ ls -la "$WORKSPACE_BUILD_PATH" ------'
163-
# ls -la "$WORKSPACE_BUILD_PATH"
164-
# echo '------ ls -la "$WORKSPACE_INSTALL_PATH" ------'
165-
# ls -la "$WORKSPACE_INSTALL_PATH"
166-
# echo '------ ls -la "$WORKSPACE_ARTIFACT_PATH" ------'
167-
# ls -la "$WORKSPACE_ARTIFACT_PATH"
168-
# echo '----------------------'
169-
# echo "SOFA_ROOT = $SOFA_ROOT"
170-
171-
- name: Fetch, install and run Regression_test
172-
id: regression-test
173-
if: always()
174-
shell: bash
175-
run: |
176-
if [[ "$RUNNER_OS" != "macOS" ]]; then
177-
# Get regression from github releases
178-
mkdir -p "${{ runner.temp }}/regression_tmp/install"
179-
curl --output "${{ runner.temp }}/regression_tmp/${RUNNER_OS}.zip" -L https://github.com/sofa-framework/regression/releases/download/release-master/Regression_test_master_for-SOFA-${{ steps.sofa.outputs.sofa_version }}_${RUNNER_OS}.zip
180-
unzip -qq "${{ runner.temp }}/regression_tmp/${RUNNER_OS}.zip" -d "${{ runner.temp }}/regression_tmp/install"
181-
# Install it in the SOFA bin directory
182-
$SUDO mv "${{ runner.temp }}"/regression_tmp/install/Regression_*/bin/* "${SOFA_ROOT}/bin"
183-
chmod +x ${SOFA_ROOT}/bin/Regression_test${{ steps.sofa.outputs.exe }}
184-
# Setup mandatory env vars
185-
export REGRESSION_SCENES_DIR="${GITHUB_WORKSPACE}/deps/CollisionAlgorithm/scenes"
186-
export REGRESSION_REFERENCES_DIR="${GITHUB_WORKSPACE}/deps/CollisionAlgorithm/regression/references"
187-
export PYTHONPATH=$SOFA_ROOT/plugins/SofaPython3/lib/python3/site-packages
188-
# Run regression test bench
189-
${SOFA_ROOT}/bin/Regression_test${{ steps.sofa.outputs.exe }}
190-
else
191-
echo "Regression tests are not supported on the CI for macOS yet (TODO)"
192-
fi
137+
- name: Launch test
138+
id: tests
139+
uses: sofa-framework/sofa-test-action@v1.0
140+
with:
141+
sofa_root: ${{ github.workspace }}/sofa
142+
sofa_version: ${{ steps.sofa.outputs.sofa_version }}
143+
src_dir: ${{ env.WORKSPACE_SRC_PATH }}
144+
build_dir: ${{ env.WORKSPACE_BUILD_PATH }}
145+
python_exe: ${{ steps.sofa.outputs.python_exe }}
146+
output_dir: ${{ github.workspace }}/tests-results_dir
147+
nb_parallel_threads: '4'
193148

194149
deploy:
195150
name: Deploy artifacts

0 commit comments

Comments
 (0)