Build Ubuntu Deb Release #2
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 Ubuntu Deb Release | |
| on: | |
| workflow_dispatch: | |
| release: | |
| types: [created] | |
| permissions: | |
| contents: write | |
| jobs: | |
| build: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| distro_version: [latest, plucky] | |
| include: | |
| - distro_version: latest | |
| container_image: ubuntu:latest | |
| display_name: Ubuntu LTS (latest) | |
| - distro_version: plucky | |
| container_image: ubuntu:25.04 | |
| display_name: Ubuntu 25.04 | |
| name: ${{ matrix.display_name }} Package Build | |
| runs-on: ubuntu-latest | |
| container: ${{ matrix.container_image }} | |
| steps: | |
| - name: Install Linux Dependencies | |
| if: runner.os == 'Linux' | |
| run: > | |
| apt-get update && apt-get install -y | |
| build-essential | |
| git | |
| cmake | |
| ninja-build | |
| debhelper | |
| devscripts | |
| jq | |
| lsb-release | |
| libglew-dev | |
| libxerces-c-dev | |
| libpng-dev | |
| swig | |
| bison | |
| flex | |
| libtinygltf-dev | |
| libgdal-dev | |
| libgeotiff-dev | |
| libhidapi-dev | |
| libvtk9-dev | |
| libopenscenegraph-dev | |
| libassimp-dev | |
| libtbb-dev | |
| libjpeg-dev | |
| libtiff-dev | |
| libturbojpeg0-dev | |
| libfftw3-dev | |
| libarchive-dev | |
| libswscale-dev | |
| libavformat-dev | |
| libavutil-dev | |
| libboost-all-dev | |
| libcgal-dev | |
| libtinyxml2-dev | |
| libavcodec-dev | |
| libcfitsio-dev | |
| libsnappy-dev | |
| libproj-dev | |
| libgdal-dev | |
| libeigen3-dev | |
| libsdl2-dev | |
| libblas-dev | |
| libvncserver-dev | |
| libaudiofile-dev | |
| libhdf5-dev | |
| libnetcdf-dev | |
| libnetcdf-c++4-dev | |
| libcgns-dev | |
| libalut-dev | |
| libfreetype-dev | |
| libomp-dev | |
| nlohmann-json3-dev | |
| qt6-base-dev | |
| qt6-tools-dev | |
| qt6-connectivity-dev | |
| qt6-declarative-dev | |
| qt6-multimedia-dev | |
| qt6-networkauth-dev | |
| qt6-quick3d-dev | |
| qt6-sensors-dev | |
| qt6-serialbus-dev | |
| qt6-serialport-dev | |
| qt6-speech-dev | |
| qt6-svg-dev | |
| qt6-virtualkeyboard-dev | |
| qt6-wayland-dev | |
| qt6-webengine-dev | |
| qt6-websockets-dev | |
| qt6-webview-dev | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| ref: ${{ github.ref }} | |
| - name: Add safe directory | |
| run: | | |
| git config --global --add safe.directory /__w/covise/covise | |
| - name: Sync and update submodules recursive | |
| run: | | |
| git submodule sync --recursive | |
| git submodule update --init --recursive | |
| - name: Copy debian dir to root src dir | |
| run: | | |
| cp -r $GITHUB_WORKSPACE/archive/debian $GITHUB_WORKSPACE/ | |
| - name: Update changelog with GitHub release info | |
| run: | | |
| # Get the release message (body) and the version from the tag | |
| RELEASE_BODY=$(curl -s -H "Accept: application/vnd.github+json" \ | |
| https://api.github.com/repos/${{ github.repository }}/releases/tags/${{ github.ref_name }} \ | |
| | jq -r '.body') | |
| VERSION=$(echo "${{ github.ref_name }}" | sed 's/^v//') | |
| # Set maintainer info for the changelog entry | |
| export DEBFULLNAME="${{ github.actor }}" | |
| export DEBEMAIL="${{ github.actor }}@users.noreply.github.com" | |
| dch --newversion "${VERSION}" --distribution "$(lsb_release -c -s)" "${RELEASE_BODY}" | |
| - name: Build deb | |
| run: | | |
| . $GITHUB_WORKSPACE/.covise.sh && dpkg-buildpackage -uc -us -j$(nproc) | |
| - name: Rename Deb | |
| run: | | |
| mv $GITHUB_WORKSPACE/../*.deb "covise-${{ github.ref_name }}-$(lsb_release -c -s).deb" | |
| - name: Release Package | |
| uses: softprops/action-gh-release@v1 | |
| with: | |
| files: '*.deb' | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |