Skip to content

FSF-7573 | FSF-7052 | FSF-7571 | FSF-7572 | Graph slam #946

FSF-7573 | FSF-7052 | FSF-7571 | FSF-7572 | Graph slam

FSF-7573 | FSF-7052 | FSF-7571 | FSF-7572 | Graph slam #946

Workflow file for this run

name: Testing and Building
on:
push:
branches:
- main
pull_request:
types: [opened, synchronize, reopened]
jobs:
#build: # Sonarcloud analysis
# name: sonarcloud-build
# runs-on: ubuntu-latest
# container:
# image: ros:humble-ros-base-jammy
# defaults:
# run:
# shell: bash
# env:
# SONAR_SCANNER_VERSION: 6.0.0.4432
# SONAR_SERVER_URL: "https://sonarcloud.io"
# BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory # Directory where build-wrapper output will be placed
# SONAR_SCANNER_DOWNLOAD_URL: https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-6.0.0.4432-linux.zip
# steps:
# - uses: actions/checkout@v4
# with:
# submodules: 'true'
# fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
# - name: Install dependencies
# run: |
# echo "source /opt/ros/$ROS_DISTRO/setup.bash" >> /home/$USERNAME/.bashrc
# ./dependencies_install.sh
# sudo apt install curl -y
# sudo apt install unzip -y
# sudo apt install bear -y
# - name: Download and set up sonar-scanner
# run: |
# curl ${{ env.SONAR_SCANNER_DOWNLOAD_URL }} --output sonar-scanner-cli-${{env.SONAR_SCANNER_VERSION}}-linux.zip
# unzip ./sonar-scanner-cli-${{env.SONAR_SCANNER_VERSION}}-linux.zip
# echo "./sonar-scanner-${{env.SONAR_SCANNER_VERSION}}-linux/bin" >> $GITHUB_PATH
# - name: Compile with bear
# run: |
# source /opt/ros/$ROS_DISTRO/setup.bash
# bear -- colcon build --packages-up-to common_lib perception ekf_state_est control planning inspection mocker_node evaluator
# - name: Run sonar-scanner
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
# run: |
# sonar-scanner --define sonar.cfamily.compile-commands="./compile_commands.json"
perception:
runs-on: ubuntu-latest
container:
image: ros:humble-ros-base-jammy
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
with:
submodules: 'true'
- name: Install dependencies
run: |
echo "source /opt/ros/$ROS_DISTRO/setup.bash" >> /home/$USERNAME/.bashrc
./dependencies_install.sh
- name: Rosdep
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
rosdep update
rosdep install --from-paths src --ignore-src -r -y
- name: Build Dependencies
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
colcon build --packages-select custom_interfaces eufs_msgs fs_msgs common_lib pacsim
- name: Build and Test Perception
run: |
source install/setup.bash
colcon build --packages-select perception
colcon test --packages-select perception
colcon test-result --all --verbose
ekf_state_est:
runs-on: ubuntu-latest
container:
image: ros:humble-ros-base-jammy
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
with:
submodules: 'true'
- name: Install dependencies
run: |
echo "source /opt/ros/$ROS_DISTRO/setup.bash" >> /home/$USERNAME/.bashrc
./dependencies_install.sh
- name: Rosdep
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
rosdep update
rosdep install --from-paths src --ignore-src -r -y
- name: Build Dependencies
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
colcon build --packages-select custom_interfaces eufs_msgs fs_msgs common_lib pacsim motion_lib perception_sensor_lib
- name: Build and Test EKF State Estimation
run: |
source install/setup.bash
colcon build --packages-select ekf_state_est
colcon test --packages-select ekf_state_est
colcon test-result --all --verbose
# slam:
# runs-on: ubuntu-latest
# container:
# image: ros:humble-ros-base-jammy
# defaults:
# run:
# shell: bash
# steps:
# - uses: actions/checkout@v4
# with:
# submodules: 'true'
# - name: Install dependencies
# run: |
# echo "source /opt/ros/$ROS_DISTRO/setup.bash" >> /home/$USERNAME/.bashrc
# ./dependencies_install.sh
# - name: Rosdep
# run: |
# source /opt/ros/$ROS_DISTRO/setup.bash
# rosdep update
# rosdep install --from-paths src --ignore-src -r -y
# - name: Build Dependencies
# run: |
# source /opt/ros/$ROS_DISTRO/setup.bash
# colcon build --packages-select custom_interfaces eufs_msgs fs_msgs common_lib pacsim motion_lib perception_sensor_lib
# - name: Build and Test SLAM
# run: |
# source install/setup.bash
# colcon build --packages-select slam
# colcon test --packages-select slam
# colcon test-result --all --verbose
control:
runs-on: ubuntu-latest
container:
image: ros:humble-ros-base-jammy
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
with:
submodules: 'true'
- name: Install dependencies
run: |
echo "source /opt/ros/$ROS_DISTRO/setup.bash" >> /home/$USERNAME/.bashrc
./dependencies_install.sh
- name: Rosdep
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
rosdep update
rosdep install --from-paths src --ignore-src -r -y
- name: Build Dependencies
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
colcon build --packages-select custom_interfaces eufs_msgs fs_msgs common_lib pacsim motion_lib
- name: Build and Test Control
run: |
source install/setup.bash
colcon build --packages-select control
colcon test --packages-select control
colcon test-result --all --verbose
planning:
runs-on: ubuntu-latest
container:
image: ros:humble-ros-base-jammy
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
with:
submodules: 'true'
- name: Install dependencies
run: |
echo "source /opt/ros/$ROS_DISTRO/setup.bash" >> /home/$USERNAME/.bashrc
./dependencies_install.sh
- name: Rosdep
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
rosdep update
rosdep install --from-paths src --ignore-src -r -y
- name: Build Dependencies
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
colcon build --packages-select custom_interfaces eufs_msgs fs_msgs common_lib pacsim
- name: Build and Test Planning
run: |
source install/setup.bash
colcon build --packages-select planning
colcon test --packages-select planning
colcon test-result --all --verbose
inspection:
runs-on: ubuntu-latest
container:
image: ros:humble-ros-base-jammy
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
with:
submodules: 'true'
- name: Install dependencies
run: |
echo "source /opt/ros/$ROS_DISTRO/setup.bash" >> /home/$USERNAME/.bashrc
./dependencies_install.sh
- name: Rosdep
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
rosdep update
rosdep install --from-paths src --ignore-src -r -y
- name: Build Dependencies
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
colcon build --packages-select custom_interfaces eufs_msgs fs_msgs common_lib pacsim
- name: Build and Test Inspection Node
run: |
source install/setup.bash
colcon build --packages-select inspection
colcon test --packages-select inspection
colcon test-result --all --verbose
mocker_node:
runs-on: ubuntu-latest
container:
image: ros:humble-ros-base-jammy
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
with:
submodules: 'true'
- name: Install dependencies
run: |
echo "source /opt/ros/$ROS_DISTRO/setup.bash" >> /home/$USERNAME/.bashrc
./dependencies_install.sh
- name: Rosdep
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
rosdep update
rosdep install --from-paths src --ignore-src -r -y
- name: Build Dependencies
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
colcon build --packages-select custom_interfaces eufs_msgs fs_msgs common_lib pacsim
- name: Build and Test Mocker Node
run: |
source install/setup.bash
colcon build --packages-select mocker_node
colcon test --packages-select mocker_node
colcon test-result --all --verbose
evaluator_node:
runs-on: ubuntu-latest
container:
image: ros:humble-ros-base-jammy
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
with:
submodules: 'true'
- name: Install dependencies
run: |
echo "source /opt/ros/$ROS_DISTRO/setup.bash" >> /home/$USERNAME/.bashrc
./dependencies_install.sh
- name: Rosdep
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
rosdep update
rosdep install --from-paths src --ignore-src -r -y
- name: Build Dependencies
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
colcon build --packages-select custom_interfaces eufs_msgs fs_msgs common_lib pacsim
- name: Build and Test Evaluator Node
run: |
source install/setup.bash
colcon build --packages-select evaluator
colcon test --packages-select evaluator --event-handler=console_direct+
colcon test-result --all --verbose