Skip to content

Routing improvements around bollards #2631

Routing improvements around bollards

Routing improvements around bollards #2631

Workflow file for this run

name: Build Navit Binaries
on: [push, pull_request]
jobs:
sanity_check:
runs-on: ubuntu-latest
container:
image: ghcr.io/navit-gps/sanity_check:master
steps:
- uses: actions/checkout@v7
with:
fetch-depth: 0
- name: run sanity check script
run: bash scripts/ci_sanity_checks.sh ci_sanity_checks.diff
- uses: actions/upload-artifact@v7
if: failure()
with:
name: Upload Patchset
path: ci_sanity_checks.diff
##- uses: reviewdog/action-suggester@v1
## with:
## github_token: ${{ secrets.github_token }}
## tool_name: Navit sanity Check
## level: error
## fail_on_error: false
# FIXME: deactivated as somethings broken with it
#- name: Run CheckStyle Test
# run: ./gradlew checkstyleMain
#- uses: actions/upload-artifact@v4
# with:
# name: Store checkstyle report
# path: navit/android/checkstyle
build_linux:
runs-on: ubuntu-latest
needs: sanity_check
container:
image: debian:latest
steps:
- run: |
apt-get update && apt-get install -y git
- uses: actions/checkout@v7
with:
fetch-depth: 0
- run: git config --global --add safe.directory $GITHUB_WORKSPACE
- name: Setup requirements
run: |
bash scripts/setup_common_requirements.sh
apt-get install -y libpng-dev libfreetype6-dev libdbus-glib-1-dev libgtk2.0-dev curl
- name: Build for Linux
run: bash scripts/build_linux.sh
- name: Run barrier routing regression test
run: test/run_barrier_test.sh "$GITHUB_WORKSPACE/linux"
- uses: actions/upload-artifact@v7
with:
name: Linux Artifacts
path: linux/_CPack_Packages
- name: Update Navit-Download-Center
run: |
bash scripts/update_download_center.sh
build_fdroid:
runs-on: ubuntu-latest
needs: sanity_check
container:
image: registry.gitlab.com/fdroid/fdroidserver:buildserver-bookworm
steps:
- uses: actions/checkout@v7
with:
fetch-depth: 0
- run: git config --global --add safe.directory $GITHUB_WORKSPACE
- run: bash -c 'if [ "X$UID" == X0 ]; then apt update && apt dist-upgrade && apt install -y sudo nodejs; fi'
- name: Install requirements
run: sudo bash scripts/setup_common_requirements.sh && bash scripts/setup_android.sh
- name: sdkmanager installed
run: |
apt-get install sdkmanager
rm -rf "$ANDROID_HOME/tools"
- name: sdkmanager usage
run: sdkmanager "platform-tools" "build-tools;31.0.0"
- name: build
run: scripts/build_fdroid.sh
- uses: actions/upload-artifact@v7
with:
name: F-Droid APK
path: unsigned
run_doxygen:
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/trunk'
container:
image: debian:latest
steps:
- uses: actions/checkout@v7
with:
fetch-depth: 0
- name: Install doxygen and essentials
run: apt-get update && apt-get -y install doxygen ca-certificates git rsync
- name: Run doxygen
run: cd navit && doxygen
- name: Prepare webroot
run: |
echo "doxygen.navit-project.org" > doc/html/CNAME
touch doc/html/.nojekyll
- name: Upload static files as artifact
id: build
uses: actions/upload-pages-artifact@v5
with:
path: doc/html
deploy_doxygen:
runs-on: ubuntu-latest
needs: run_doxygen
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deploy.outputs.page_url }}
steps:
- name: Deploy to GitHub Pages
id: deploy
uses: actions/deploy-pages@v5
check_spelling:
runs-on: ubuntu-latest
container:
image: debian:latest
steps:
- uses: actions/checkout@v7
- run: apt-get update && apt-get install -y git wget
- uses: crate-ci/typos@v1.50.3
with:
files: docs/
build_sailfish:
# FIXME: use a specific docker image, so we can build this at home
runs-on: ubuntu-latest
needs: sanity_check
steps:
- uses: actions/checkout@v7
with:
fetch-depth: 0
- name: Prepare rpmbuild dir
run: |
mkdir -p ${{ runner.temp }}/rpmbuild
chmod 777 ${{ runner.temp }}/rpmbuild
- name: Build with Sailfish SDK
run: >
docker run -e VERSION_ID=5.0.0.43
-v ${{ runner.temp }}/rpmbuild:/home/nemo/rpmbuild:rw
-v ${{ github.workspace }}:/home/nemo/navit
coderus/sailfishos-platform-sdk:5.0.0.43
/bin/bash -lxc "git config --global --add safe.directory /home/nemo/navit; /home/nemo/navit/contrib/sailfish/build_sailfish_ci.sh"
- uses: actions/upload-artifact@v7
with:
name: Sailfish RPMs
path: ${{ runner.temp }}/rpmbuild/RPMS/
build_android:
runs-on: ubuntu-latest
needs: sanity_check
steps:
- uses: actions/checkout@v7
with:
fetch-depth: 0
- run: git config --global --add safe.directory $GITHUB_WORKSPACE
- run: if [ "X$UID" == X0 ]; then apt update && apt install -y sudo; fi
- name: Install requirements
run: sudo bash scripts/setup_common_requirements.sh && bash scripts/setup_android.sh
- name: Setup Keystore and Playstore Keys
run: scripts/setup_publish_keys.sh
- name: Setup Android SDK
uses: android-actions/setup-android@v4
with:
packages: ''
- name: Build and upload Android
run: fastlane github_actions
#- name: Run Lint Test
# run: |
# ln -sf navit/navit.dtd navit.dtd
# mkdir test-results
# ./gradlew lint test
- uses: actions/upload-artifact@v7
with:
name: Store APK
path: build/outputs/apk
- uses: actions/upload-artifact@v7
with:
name: Store logs
path: build/outputs/logs
#- uses: actions/upload-artifact@v4
# with:
# name: Store Lint reports
# path: build/reports
- uses: actions/upload-artifact@v7
with:
name: Android Test-results
path: test-results
- name: Update Navit-Download-Center
run: |
bash scripts/update_download_center.sh
build_win32:
runs-on: ubuntu-latest
needs: sanity_check
container:
image: ubuntu:26.04
steps:
- run: |
apt-get update && apt-get install -y git
- uses: actions/checkout@v7
with:
fetch-depth: 0
- run: git config --global --add safe.directory $GITHUB_WORKSPACE
- name: Prepare the Windows build environment
run: bash scripts/setup_win32.sh
- name: Build for Windows
run: |
bash scripts/build_win32.sh
- uses: actions/upload-artifact@v7
with:
name: Win32
path: win32/navit.exe
- name: Update Navit-Download-Center
run: |
bash scripts/update_download_center.sh
build_wince:
runs-on: ubuntu-latest
needs: sanity_check
container:
image: ghcr.io/enlyze/windows-ce-build-environment-arm
steps:
- uses: actions/checkout@v7
with:
fetch-depth: 0
- run: git config --global --add safe.directory $GITHUB_WORKSPACE
#- run: apt-get update && apt-get install -y git-core
- name: Prepare the WinCE build environment
run: bash scripts/setup_wince.sh
- name: Build for Windows CE
run: bash scripts/build_wince.sh
- uses: actions/upload-artifact@v7
with:
path: wince/output/navit.cab
name: WinCE CAB
- run: |
rm -rf wince/output/navit.cab
- uses: actions/upload-artifact@v7
with:
path: wince/output
name: WinCE Archive
- name: Update Navit-Download-Center
run: bash scripts/update_download_center.sh
build_tomtom_minimal:
runs-on: ubuntu-latest
needs: sanity_check
container:
image: ghcr.io/navit-gps/tomtom:master
steps:
- uses: actions/checkout@v7
with:
fetch-depth: 0
- run: git config --global --add safe.directory $GITHUB_WORKSPACE
- name: Prepare the tomtom build environment
run: |
bash scripts/setup_common_requirements.sh
apt-get install -y xsltproc
- name: Build for Tomtom (minimal)
run: bash scripts/build_tomtom_minimal.sh
- uses: actions/upload-artifact@v7
with:
name: Tomtom Minimal
path: /output
- name: Update Navit-Download-Center
run: |
bash scripts/update_download_center.sh
build_tomtom_plugin:
runs-on: ubuntu-latest
needs: sanity_check
container:
image: ghcr.io/navit-gps/tomtom:master
steps:
- uses: actions/checkout@v7
with:
fetch-depth: 0
- run: git config --global --add safe.directory $GITHUB_WORKSPACE
- name: Prepare the tomtom build environment
run: |
bash scripts/setup_common_requirements.sh
apt-get install -y xsltproc
- name: Build for Tomtom (plugin)
run: |
bash scripts/build_tomtom_plugin.sh
- uses: actions/upload-artifact@v7
with:
name: Tomtom Plugin
path: /output
- name: Update Navit-Download-Center
run: |
bash scripts/update_download_center.sh
merge_trunk_in_master:
runs-on: ubuntu-latest
needs: [build_android, build_fdroid, build_wince, build_tomtom_minimal, build_linux, build_tomtom_plugin, build_win32]
if: github.ref == 'refs/heads/trunk'
steps:
- uses: actions/checkout@v7
- name: Merge to master branch
uses: devmasx/merge-branch@v1.4.0
with:
type: now
target_branch: 'master'
github_token: ${{ github.token }}