-
Notifications
You must be signed in to change notification settings - Fork 30
84 lines (77 loc) · 2.8 KB
/
main.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# This is a basic workflow to help you get started with Actions
name: CI
# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the main branch
push:
branches: [ main ]
pull_request:
branches: [ main ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
test_docker: # On Linux, iterates on all ROS 1 and ROS 2 distributions.
runs-on: ubuntu-latest
strategy:
matrix:
ros_distribution:
- melodic
- noetic
include:
# Melodic Morenia (May 2018 - May 2023)
- docker_image: ros:melodic-perception-bionic
ros_distribution: melodic
ros_version: 1
# Noetic Ninjemys (May 2020 - May 2025)
- docker_image: ros:noetic-perception-focal
ros_distribution: noetic
ros_version: 1
container:
image: ${{ matrix.docker_image }}
steps:
- name: install Melodic additional prereq
if: ${{ matrix.ros_distribution == 'melodic' }}
run: |
echo Setup melodic additional build requirements
DEBIAN_FRONTEND=noninteractive apt-get update && apt-get install python3-pip --no-install-recommends -y
pip3 install setuptools
- name: install prereq tools
if: ${{ matrix.ros_version == 1 }}
run: |
echo Setup build requirements
DEBIAN_FRONTEND=noninteractive apt-get update && apt-get install sudo python3-pip lcov git --no-install-recommends -y
pip3 install colcon-common-extensions
pip3 install colcon-lcov-result
pip3 install colcon-coveragepy-result
pip3 install colcon-mixin
pip3 install vcstool
- name: build and test ROS 1
if: ${{ matrix.ros_version == 1 }}
uses: ros-tooling/action-ros-ci@v0.2
env:
DEBIAN_FRONTEND: noninteractive
with:
package-name: ld06_lidar
target-ros1-distro: ${{ matrix.ros_distribution }}
- name: build and test ROS 2
if: ${{ matrix.ros_version == 2 }}
uses: ros-tooling/action-ros-ci@v0.2
env:
DEBIAN_FRONTEND: noninteractive
with:
package-name: ld06_lidar
target-ros2-distro: ${{ matrix.ros_distribution }}
- name: asan
uses: ros-tooling/action-ros-ci@v0.2
with:
colcon-defaults: |
{
"build": {
"mixin": ["asan-gcc"]
}
}
colcon-mixin-repository: https://raw.githubusercontent.com/colcon/colcon-mixin-repository/3e627e0fa30db85aea05a50e2c61a9832664d236/index.yaml
package-name: ld06_lidar
target-ros1-distro: ${{ matrix.ros_distribution }}
env:
DEBIAN_FRONTEND: noninteractive