Fixed build workflow #289
This file contains 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 and deploy on Linux | |
on: [push] | |
env: | |
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) | |
BUILD_TYPE: Release | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
steps: | |
# https://github.com/actions/checkout | |
- uses: actions/checkout@v3 | |
with: | |
submodules: 'recursive' | |
- name: Update before installing packages | |
run: sudo apt-get update | |
- name: Checkout google test repo | |
run: sudo apt-get install libgtest-dev && cd /usr/src/gtest && sudo mkdir build && cd build && sudo cmake .. && sudo make DESTDIR=/usr/lib | |
- name: Install libcurl and cpp wrapper for it | |
run: sudo apt-get install libcurl4-openssl-dev libcurlpp-dev | |
- name: Install libexpat-dev manually | |
run: sudo apt-get install libexpat-dev | |
- name: Install pandoc manually | |
run: sudo apt-get install pandoc | |
- name: Install support libssl | |
run: sudo apt install git libssl-dev libexpat-dev libsystemd-dev libwrap0-dev libz-dev | |
- name: Install libmosquitto-dev manually | |
run: sudo apt install libmosquitto-dev | |
- name: Install libssl-dev manually | |
run: sudo apt-get install libssl-dev | |
- name: Install libwebsockets-dev manually | |
run: sudo apt-get install libwebsockets-dev | |
- name: Create Build Environment | |
# Some projects don't allow in-source building, so create a separate build directory | |
# We'll use this as our working directory for all subsequent commands | |
run: cmake -E make_directory ${{github.workspace}}/build | |
- name: Configure CMake | |
# Use a bash shell so we can use the same syntax for environment variable | |
# access regardless of the host operating system | |
shell: bash | |
working-directory: ${{github.workspace}}/build | |
# Note the current convention is to use the -S and -B options here to specify source | |
# and build directories, but this is only available with CMake 3.13 and higher. | |
# The CMake binaries on the Github Actions machines are (as of this writing) 3.12 | |
#run: cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DVSCP_PATH=vscp/ | |
run: cmake .. -DCMAKE_INSTALL_PREFIX=/ -DVSCP_PATH=vscp/ | |
- name: Build | |
working-directory: ${{github.workspace}}/build | |
shell: bash | |
# Execute the build. You can specify a specific target with "--target <NAME>" | |
run: | | |
make -j$(nproc) | |
sudo cpack -G DEB | |
sudo make install DESTDIR=AppDir | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ matrix.os }}_vscpd_15.0.0.deb | |
path: /home/runner/work/vscp/vscp/build/vscpd_15.0.0.deb | |
retention-days: 7 |