diff --git a/.github/workflows/build_test.yml b/.github/workflows/build_test.yml new file mode 100644 index 000000000..5d3e11027 --- /dev/null +++ b/.github/workflows/build_test.yml @@ -0,0 +1,59 @@ + +name: Build Test +on: + push: + branches: + - 'master' + pull_request: + branches: + - '*' + +jobs: + build: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + config: + - {rosdistro: 'melodic', container: 'ros:melodic-ros-base-bionic'} + - {rosdistro: 'noetic', container: 'ros:noetic-ros-base-focal'} + container: ${{ matrix.config.container }} + steps: + - uses: actions/checkout@v1 + with: + token: ${{ secrets.ACCESS_TOKEN }} + github-token: ${{ secrets.GITHUB_TOKEN }} + - name: Install catkin-tools on melodic + if: ${{ matrix.config.container == 'ros:melodic-ros-base-bionic' }} + run: | + apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 + apt update && apt install -y python3-wstool python-catkin-tools + - name: Install catkin-tools on Noetic + if: ${{ matrix.config.container == 'ros:noetic-ros-base-focal' }} + run: | + apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654 + apt update && apt install -y python3-pip + pip3 install osrf-pycommon + apt update && apt install -y python3-wstool python3-catkin-tools + - name: release_build_test + working-directory: + env: + DEBIAN_FRONTEND: noninteractive + run: | + apt update + apt install -y python3-wstool autoconf libtool git + mkdir -p $HOME/catkin_ws/src; + cd $HOME/catkin_ws + catkin init + catkin config --extend "/opt/ros/${{matrix.config.rosdistro}}" + catkin config --merge-devel + cd $HOME/catkin_ws/src + ln -s $GITHUB_WORKSPACE + cd $HOME/catkin_ws + wstool init src src/voxblox/voxblox_https.rosinstall + wstool update -t src -j4 + rosdep update + rosdep install --from-paths src --ignore-src -y --rosdistro ${{matrix.config.rosdistro}} + catkin config --cmake-args -DCMAKE_BUILD_TYPE=Release + catkin build -j$(nproc) -l$(nproc) voxblox_ros + shell: bash diff --git a/README.md b/README.md index 1a265cddb..2c1747d6e 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # Voxblox +[![Build Test](https://github.com/ethz-asl/voxblox/actions/workflows/build_test.yml/badge.svg)](https://github.com/ethz-asl/voxblox/actions/workflows/build_test.yml) + ![voxblox_small](https://cloud.githubusercontent.com/assets/5616392/15180357/536a8776-1781-11e6-8c1d-f2dfa34b1408.gif) Voxblox is a volumetric mapping library based mainly on Truncated Signed Distance Fields (TSDFs). It varies from other SDF libraries in the following ways: diff --git a/voxblox_https.rosinstall b/voxblox_https.rosinstall index 7260346b7..9adcf377c 100644 --- a/voxblox_https.rosinstall +++ b/voxblox_https.rosinstall @@ -23,6 +23,11 @@ local-name: protobuf_catkin uri: https://github.com/ethz-asl/protobuf_catkin.git - git: - local-name: voxblox - uri: https://github.com/ethz-asl/voxblox.git - + local-name: numpy_eigen + uri: https://github.com/ethz-asl/numpy_eigen.git +- git: + local-name: catkin_boost_python_buildtool + uri: https://github.com/ethz-asl/catkin_boost_python_buildtool.git +- git: + local-name: catkin_grpc + uri: https://github.com/CogRob/catkin_grpc.git diff --git a/voxblox_ros/CMakeLists.txt b/voxblox_ros/CMakeLists.txt index afefc8580..e3258563c 100644 --- a/voxblox_ros/CMakeLists.txt +++ b/voxblox_ros/CMakeLists.txt @@ -4,7 +4,7 @@ project(voxblox_ros) find_package(catkin_simple REQUIRED) catkin_simple(ALL_DEPS_REQUIRED) -add_definitions(-std=c++11 -Wall -Wextra) +add_definitions(-std=c++14 -Wall -Wextra) ############# # LIBRARIES # diff --git a/voxblox_ssh.rosinstall b/voxblox_ssh.rosinstall index 22a2ada6b..73c7935e8 100644 --- a/voxblox_ssh.rosinstall +++ b/voxblox_ssh.rosinstall @@ -23,6 +23,11 @@ local-name: protobuf_catkin uri: git@github.com:ethz-asl/protobuf_catkin.git - git: - local-name: voxblox - uri: git@github.com:ethz-asl/voxblox.git - + local-name: numpy_eigen + uri: git@github.com:ethz-asl/numpy_eigen.git +- git: + local-name: catkin_boost_python_buildtool + uri: git@github.com:ethz-asl/catkin_boost_python_buildtool.git +- git: + local-name: catkin_grpc + uri: git@github.com:CogRob/catkin_grpc.git