Repository navigation
Routing improvements around bollards #2631
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 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 }} |