# This is a basic workflow to help you get started with Actions name: ROS # Controls when the action will run. Triggers the workflow on push or pull request # events but only for the master branch on: push: pull_request: branches: - main # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: build-melodic: # The type of runner that the job will run on runs-on: ubuntu-18.04 container: image: ros:melodic-robot steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v3 - name: Install dependencies run: sudo apt-get update && sudo apt-get install -y git libasio-dev - name: Create catkin workspace run: mkdir -p /catkin_ws/src && cd /catkin_ws/src && /bin/bash -c "source /opt/ros/${ROS_DISTRO}/setup.bash; catkin_init_workspace" - name: Copy code to catkin workspace run: cd /catkin_ws/src && git clone https://github.com/westonrobot/ugv_sdk.git - name: Run catkin_make run: cd /catkin_ws && /bin/bash -c "source /opt/ros/${ROS_DISTRO}/setup.bash; catkin_make" build-noetic: # The type of runner that the job will run on runs-on: ubuntu-20.04 container: image: ros:noetic-robot steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v3 - name: Install dependencies run: sudo apt-get update && sudo apt-get install -y git libasio-dev - name: Create catkin workspace run: mkdir -p /catkin_ws/src && cd /catkin_ws/src && /bin/bash -c "source /opt/ros/${ROS_DISTRO}/setup.bash; catkin_init_workspace" - name: Copy code to catkin workspace run: cd /catkin_ws/src && git clone https://github.com/westonrobot/ugv_sdk.git - name: Run catkin_make run: cd /catkin_ws && /bin/bash -c "source /opt/ros/${ROS_DISTRO}/setup.bash; catkin_make" build-foxy: # The type of runner that the job will run on runs-on: ubuntu-20.04 container: image: ros:foxy steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v3 - name: Install dependencies run: sudo apt-get update && sudo apt-get install -y git libasio-dev - name: Create colcon workspace run: mkdir -p /ros2_ws/src && cd /ros2_ws/src && /bin/bash -c "source /opt/ros/${ROS_DISTRO}/setup.bash" - name: Copy code to colcon workspace run: cd /ros2_ws/src && git clone https://github.com/westonrobot/ugv_sdk.git - name: Run colcon build run: cd /ros2_ws && /bin/bash -c "source /opt/ros/${ROS_DISTRO}/setup.bash; colcon build" build-humble: # The type of runner that the job will run on runs-on: ubuntu-22.04 container: image: ros:humble steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v3 - name: Install dependencies run: sudo apt-get update && sudo apt-get install -y git libasio-dev - name: Create colcon workspace run: mkdir -p /ros2_ws/src && cd /ros2_ws/src && /bin/bash -c "source /opt/ros/${ROS_DISTRO}/setup.bash" - name: Copy code to colcon workspace run: cd /ros2_ws/src && git clone https://github.com/westonrobot/ugv_sdk.git - name: Run colcon build run: cd /ros2_ws && /bin/bash -c "source /opt/ros/${ROS_DISTRO}/setup.bash; colcon build"