From 0cbb23abe13deaf21603b2d882a2a36cdab7f270 Mon Sep 17 00:00:00 2001 From: Siarhei Fedartsou Date: Sun, 9 Jun 2024 09:24:02 +0200 Subject: [PATCH] Fix Windows CI: update conan.cmake and disable unit tests as temporary workaround for OOM issues (#6930) --- .github/workflows/osrm-backend.yml | 30 ++++++++-- cmake/conan.cmake | 2 +- scripts/ci/windows-build.bat | 89 ------------------------------ 3 files changed, 25 insertions(+), 96 deletions(-) delete mode 100644 scripts/ci/windows-build.bat diff --git a/.github/workflows/osrm-backend.yml b/.github/workflows/osrm-backend.yml index eabe3b813..208d24707 100644 --- a/.github/workflows/osrm-backend.yml +++ b/.github/workflows/osrm-backend.yml @@ -46,15 +46,32 @@ jobs: echo PUBLISH=$([[ "${GITHUB_REF:-}" == "refs/tags/v${PACKAGE_JSON_VERSION}" ]] && echo "On" || echo "Off") >> $GITHUB_ENV - run: npm install --ignore-scripts - run: npm link --ignore-scripts - - uses: microsoft/setup-msbuild@v2 - name: Build - run: | - .\scripts\ci\windows-build.bat - - name: Run node tests shell: bash run: | - ./lib/binding/osrm-datastore.exe test/data/ch/monaco.osrm - node test/nodejs/index.js + mkdir build + cd build + cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_CONAN=ON -DENABLE_NODE_BINDINGS=ON .. + cmake --build . --config Release + + # TODO: MSVC goes out of memory when building our tests + # - name: Run tests + # shell: bash + # run: | + # cd build + # cmake --build . --config Release --target tests + # # TODO: run tests + # - name: Run node tests + # shell: bash + # run: | + # ./lib/binding/osrm-extract.exe -p profiles/car.lua test/data/monaco.osm.pbf + + # mkdir -p test/data/ch + # cp test/data/monaco.osrm* test/data/ch/ + # ./lib/binding/osrm-contract.exe test/data/ch/monaco.osrm + + # ./lib/binding/osrm-datastore.exe test/data/ch/monaco.osrm + # node test/nodejs/index.js - name: Build Node package shell: bash run: ./scripts/ci/node_package.sh @@ -203,6 +220,7 @@ jobs: CUCUMBER_TIMEOUT: 60000 ENABLE_CLANG_TIDY: ON + - name: clang-14-release continue-on-error: false node: 18 diff --git a/cmake/conan.cmake b/cmake/conan.cmake index 4f5f67e74..7c78f7415 100644 --- a/cmake/conan.cmake +++ b/cmake/conan.cmake @@ -55,7 +55,7 @@ function(_get_msvc_ide_version result) set(${result} 15 PARENT_SCOPE) elseif(NOT MSVC_VERSION VERSION_LESS 1920 AND MSVC_VERSION VERSION_LESS 1930) set(${result} 16 PARENT_SCOPE) - elseif(NOT MSVC_VERSION VERSION_LESS 1930 AND MSVC_VERSION VERSION_LESS 1940) + elseif(NOT MSVC_VERSION VERSION_LESS 1930 AND MSVC_VERSION VERSION_LESS 1950) set(${result} 17 PARENT_SCOPE) else() message(FATAL_ERROR "Conan: Unknown MSVC compiler version [${MSVC_VERSION}]") diff --git a/scripts/ci/windows-build.bat b/scripts/ci/windows-build.bat deleted file mode 100644 index bc1fc0a8f..000000000 --- a/scripts/ci/windows-build.bat +++ /dev/null @@ -1,89 +0,0 @@ -@ECHO OFF -SETLOCAL -SET EL=0 - -ECHO NUMBER_OF_PROCESSORS^: %NUMBER_OF_PROCESSORS% - -SET PROJECT_DIR=%CD% -SET CONFIGURATION=Release - -mkdir build -IF %ERRORLEVEL% NEQ 0 GOTO ERROR -cd build -IF %ERRORLEVEL% NEQ 0 GOTO ERROR -cmake -DENABLE_CONAN=ON -DENABLE_NODE_BINDINGS=ON -DCMAKE_BUILD_TYPE=%CONFIGURATION% -G "Visual Studio 17 2022" .. -IF %ERRORLEVEL% NEQ 0 GOTO ERROR - -msbuild OSRM.sln ^ -/p:Configuration=%CONFIGURATION% ^ -/p:Platform=x64 ^ -/t:rebuild ^ -/p:BuildInParallel=true ^ -/m:%NUMBER_OF_PROCESSORS% ^ -/toolsversion:Current ^ -/clp:Verbosity=quiet ^ -/nologo -IF %ERRORLEVEL% NEQ 0 GOTO ERROR - -CD %PROJECT_DIR%\build -IF %ERRORLEVEL% NEQ 0 GOTO ERROR - -ECHO running extractor-tests.exe ... -unit_tests\%CONFIGURATION%\extractor-tests.exe -IF %ERRORLEVEL% NEQ 0 GOTO ERROR - -ECHO running contractor-tests.exe ... -unit_tests\%CONFIGURATION%\contractor-tests.exe -IF %ERRORLEVEL% NEQ 0 GOTO ERROR - -ECHO running engine-tests.exe ... -unit_tests\%CONFIGURATION%\engine-tests.exe -IF %ERRORLEVEL% NEQ 0 GOTO ERROR - -ECHO running util-tests.exe ... -unit_tests\%CONFIGURATION%\util-tests.exe -IF %ERRORLEVEL% NEQ 0 GOTO ERROR - -ECHO running server-tests.exe ... -unit_tests\%CONFIGURATION%\server-tests.exe -IF %ERRORLEVEL% NEQ 0 GOTO ERROR - -ECHO running partitioner-tests.exe ... -unit_tests\%CONFIGURATION%\partitioner-tests.exe -IF %ERRORLEVEL% NEQ 0 GOTO ERROR - -ECHO running customizer-tests.exe ... -unit_tests\%CONFIGURATION%\customizer-tests.exe -IF %ERRORLEVEL% NEQ 0 GOTO ERROR - -SET test_region=monaco -SET test_region_ch=ch\monaco -SET test_region_mld=mld\monaco -SET test_osm=%test_region%.osm.pbf -COPY %PROJECT_DIR%\test\data\%test_region%.osm.pbf %test_osm% -%CONFIGURATION%\osrm-extract.exe -p %PROJECT_DIR%\profiles\car.lua %test_osm% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR - -MKDIR ch -XCOPY %test_region%.osrm.* ch\ -XCOPY %test_region%.osrm ch\ -MKDIR mld -XCOPY %test_region%.osrm.* mld\ -XCOPY %test_region%.osrm mld\ -%CONFIGURATION%\osrm-contract.exe %test_region_ch%.osrm -%CONFIGURATION%\osrm-partition.exe %test_region_mld%.osrm -%CONFIGURATION%\osrm-customize.exe %test_region_mld%.osrm -XCOPY /Y ch\*.* ..\test\data\ch\ -XCOPY /Y mld\*.* ..\test\data\mld\ -unit_tests\%CONFIGURATION%\library-tests.exe -IF %ERRORLEVEL% NEQ 0 GOTO ERROR - -:ERROR -ECHO ~~~~~~~~~~~~~~~~~~~~~~ ERROR %~f0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -ECHO ERRORLEVEL^: %ERRORLEVEL% -SET EL=%ERRORLEVEL% - -:DONE -ECHO ~~~~~~~~~~~~~~~~~~~~~~ DONE %~f0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -EXIT /b %EL%