Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade Ubuntu CI builds to use 20.04 #6119

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
163 changes: 82 additions & 81 deletions .github/workflows/osrm-backend.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,13 @@ env:

jobs:
format-taginfo-docs:
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- name: Use Node.js
uses: actions/setup-node@v2
with:
node-version: 10
node-version: 12
- name: Enable Node.js cache
uses: actions/cache@v2
with:
Expand All @@ -54,42 +54,42 @@ jobs:
strategy:
matrix:
include:
- name: gcc-7-debug-cov
- name: gcc-9-debug-cov
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Debug
CCOMPILER: gcc-7
CCOMPILER: gcc-9
CUCUMBER_TIMEOUT: 20000
CXXCOMPILER: g++-7
CXXCOMPILER: g++-9
ENABLE_COVERAGE: ON

- name: gcc-7-debug-asan
- name: gcc-9-debug-asan
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Debug
CCOMPILER: gcc-7
CCOMPILER: gcc-9
CUCUMBER_TIMEOUT: 20000
CXXCOMPILER: g++-7
CXXCOMPILER: g++-9
ENABLE_SANITIZER: ON
TARGET_ARCH: x86_64-asan

- name: clang-5.0-debug
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Debug
CLANG_VERSION: 5.0.0
CUCUMBER_TIMEOUT: 60000

- name: mason-linux-debug-asan
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
Expand All @@ -98,76 +98,76 @@ jobs:

- name: mason-linux-release
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
ENABLE_MASON: ON

- name: gcc-9-release
- name: gcc-11-release
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CCOMPILER: gcc-9
CXXCOMPILER: g++-9
CXXFLAGS: -Wno-cast-function-type
CCOMPILER: gcc-11
CXXCOMPILER: g++-11

- name: gcc-8-release
- name: gcc-10-release
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CCOMPILER: gcc-8
CXXCOMPILER: g++-8
CXXFLAGS: -Wno-cast-function-type
CCOMPILER: gcc-10
CXXCOMPILER: g++-10

- name: gcc-7-release
- name: gcc-9-release
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CCOMPILER: gcc-7
CXXCOMPILER: g++-7
CCOMPILER: gcc-9
CXXCOMPILER: g++-9
CXXFLAGS: -Wno-cast-function-type

- name: gcc-7-release-i686
- name: gcc-9-release-i686
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CCOMPILER: gcc-7
CCOMPILER: gcc-9
CFLAGS: "-m32 -msse2 -mfpmath=sse"
CXXCOMPILER: g++-7
CXXCOMPILER: g++-9
CXXFLAGS: "-m32 -msse2 -mfpmath=sse"
TARGET_ARCH: i686

- name: gcc-5-release
- name: gcc-8-release
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CCOMPILER: gcc-5
CXXCOMPILER: g++-5
CCOMPILER: gcc-8
CXXCOMPILER: g++-8
CXXFLAGS: -Wno-cast-function-type

- name: gcc-6-release
- name: gcc-7-release
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
CCOMPILER: gcc-6
CXXCOMPILER: g++-6
CCOMPILER: gcc-7
CXXCOMPILER: g++-7

- name: mason-osx-release-node-10
- name: mason-osx-release-node-12
build_node_package: true
continue-on-error: false
node: 10
node: 12
runs-on: macos-10.15
BUILD_TOOLS: ON
BUILD_TYPE: Release
Expand All @@ -177,10 +177,10 @@ jobs:
ENABLE_ASSERTIONS: ON
ENABLE_MASON: ON

- name: mason-osx-release-node-12
- name: mason-osx-release-node-14
build_node_package: true
continue-on-error: false
node: 12
node: 14
runs-on: macos-10.15
BUILD_TOOLS: ON
BUILD_TYPE: Release
Expand All @@ -190,10 +190,10 @@ jobs:
ENABLE_ASSERTIONS: ON
ENABLE_MASON: ON

- name: mason-osx-release-node-14
- name: mason-osx-release-node-16
build_node_package: true
continue-on-error: false
node: 14
node: 16
runs-on: macos-10.15
BUILD_TOOLS: ON
BUILD_TYPE: Release
Expand All @@ -205,74 +205,75 @@ jobs:

- name: gcc-7-release-shared
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TOOLS: ON
BUILD_TYPE: Release
BUILD_SHARED_LIBS: ON
CCOMPILER: gcc-7
CXXCOMPILER: g++-7

- name: node-14-mason-linux-release
- name: node-12-mason-linux-release
build_node_package: true
continue-on-error: false
node: 14
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
ENABLE_MASON: ON
NODE_PACKAGE_TESTS_ONLY: ON

- name: node-14-mason-linux-debug
- name: node-12-mason-linux-debug
build_node_package: true
continue-on-error: false
node: 14
runs-on: ubuntu-18.04
node: 12
runs-on: ubuntu-20.04
BUILD_TYPE: Debug
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
ENABLE_MASON: ON
NODE_PACKAGE_TESTS_ONLY: ON

- name: node-12-mason-linux-release
- name: node-14-mason-linux-release
build_node_package: true
continue-on-error: false
node: 12
runs-on: ubuntu-18.04
node: 14
runs-on: ubuntu-20.04
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
ENABLE_MASON: ON
NODE_PACKAGE_TESTS_ONLY: ON

- name: node-12-mason-linux-debug
- name: node-14-mason-linux-debug
build_node_package: true
continue-on-error: false
node: 12
runs-on: ubuntu-18.04
node: 14
runs-on: ubuntu-20.04
BUILD_TYPE: Debug
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
ENABLE_MASON: ON
NODE_PACKAGE_TESTS_ONLY: ON

- name: node-10-mason-linux-release

- name: node-16-mason-linux-release
build_node_package: true
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 16
runs-on: ubuntu-20.04
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
ENABLE_MASON: ON
NODE_PACKAGE_TESTS_ONLY: ON

- name: node-10-mason-linux-debug
- name: node-16-mason-linux-debug
build_node_package: true
continue-on-error: false
node: 10
runs-on: ubuntu-18.04
node: 16
runs-on: ubuntu-20.04
BUILD_TYPE: Debug
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
Expand All @@ -297,7 +298,7 @@ jobs:
continue-on-error: true
# TODO: Use node 'latest' once supported: https://github.com/actions/setup-node/issues/257
node: 16
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
Expand All @@ -309,7 +310,7 @@ jobs:
continue-on-error: true
# TODO: Use node 'latest' once supported: https://github.com/actions/setup-node/issues/257
node: 16
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
BUILD_TYPE: Debug
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
Expand All @@ -332,7 +333,7 @@ jobs:
build_node_package: true
continue-on-error: true
node: "lts/*"
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
BUILD_TYPE: Release
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
Expand All @@ -343,7 +344,7 @@ jobs:
build_node_package: true
continue-on-error: true
node: "lts/*"
runs-on: ubuntu-18.04
runs-on: ubuntu-20.04
BUILD_TYPE: Debug
CLANG_VERSION: 5.0.0
ENABLE_GLIBC_WORKAROUND: ON
Expand Down Expand Up @@ -410,7 +411,7 @@ jobs:

if [[ "$ENABLE_SANITIZER" == 'ON' ]]; then
# We can only set this after checkout once we know the workspace directory
echo "LSAN_OPTIONS=suppressions=${GITHUB_WORKSPACE}/scripts/ci/leaksanitizer.conf" >> $GITHUB_ENV
echo "LSAN_OPTIONS=print_suppressions=0:suppressions=${GITHUB_WORKSPACE}/scripts/ci/leaksanitizer.conf" >> $GITHUB_ENV
fi

if [[ "${RUNNER_OS}" == "Linux" ]]; then
Expand Down
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
- Build:
- CHANGED: Replace Travis with Github Actions for CI builds [#6071](https://github.com/Project-OSRM/osrm-backend/pull/6071)
- FIXED: Fixed Boost link flags in pkg-config file. [#6083](https://github.com/Project-OSRM/osrm-backend/pull/6083)
- CHANGED: Upgrade Ubuntu CI builds to 20.04 [#6119](https://github.com/Project-OSRM/osrm-backend/pull/6119)
- Routing:
- FIXED: Fix generation of inefficient MLD partitions [#6084](https://github.com/Project-OSRM/osrm-backend/pull/6084)

Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -697,7 +697,7 @@ install(TARGETS osrm-components DESTINATION bin)
if(BUILD_TOOLS)
message(STATUS "Activating OSRM internal tools")
add_executable(osrm-io-benchmark src/tools/io-benchmark.cpp $<TARGET_OBJECTS:UTIL>)
target_link_libraries(osrm-io-benchmark ${BOOST_BASE_LIBRARIES})
target_link_libraries(osrm-io-benchmark ${BOOST_BASE_LIBRARIES} ${TBB_LIBRARIES})

install(TARGETS osrm-io-benchmark DESTINATION bin)
endif()
Expand Down
2 changes: 1 addition & 1 deletion scripts/ci/before_install.i686.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@
sudo dpkg --add-architecture i386
sudo add-apt-repository --yes ppa:ubuntu-toolchain-r/test && ( sudo apt-get update -qq --yes || true )

sudo apt-get install -qq --yes --force-yes g++-7-multilib libxml2-dev:i386 libexpat1-dev:i386 libzip-dev:i386 libbz2-dev:i386 libtbb-dev:i386 lua5.2:i386 liblua5.2-dev:i386 libboost-date-time-dev:i386 libboost-filesystem-dev:i386 libboost-iostreams-dev:i386 libboost-program-options-dev:i386 libboost-regex-dev:i386 libboost-system-dev:i386 libboost-thread-dev:i386 libboost-test-dev:i386
sudo apt-get install -qq --yes --force-yes g++-9-multilib libxml2-dev:i386 libexpat1-dev:i386 libzip-dev:i386 libbz2-dev:i386 libtbb-dev:i386 lua5.2:i386 liblua5.2-dev:i386 libboost-date-time-dev:i386 libboost-filesystem-dev:i386 libboost-iostreams-dev:i386 libboost-program-options-dev:i386 libboost-regex-dev:i386 libboost-system-dev:i386 libboost-thread-dev:i386 libboost-test-dev:i386