1
+ name : Build ros_vrpn_client (ROS1)
2
+ on :
3
+ push :
4
+ branches :
5
+ - " master"
6
+ pull_request :
7
+ branches :
8
+ - " master"
9
+ schedule :
10
+ - cron : ' 0 0 * * 0' # every Sunday at midnight
11
+
12
+ jobs :
13
+ build :
14
+ runs-on : [self-hosted, linux]
15
+ env :
16
+ rosdistro : ${{ matrix.ubuntu == '20.04' && 'noetic' || 'one' }}
17
+ strategy :
18
+ fail-fast : false
19
+ matrix :
20
+ gcc : ['9', '10', '11']
21
+ ubuntu : ['20.04', '22.04']
22
+ container :
23
+ image : omavteam/ubuntu-omav-ros:ros-desktop-${{ matrix.ubuntu }}
24
+ credentials :
25
+ username : ${{ secrets.DOCKER_USERNAME }}
26
+ password : ${{ secrets.DOCKER_PASSWORD }}
27
+ name : Ubuntu ${{ matrix.ubuntu }} - GCC ${{ matrix.gcc }}
28
+ steps :
29
+ - name : Switch GCC version
30
+ run : |
31
+ update-alternatives --set gcc /usr/bin/gcc-${{ matrix.gcc }}
32
+ update-alternatives --set g++ /usr/bin/g++-${{ matrix.gcc}}
33
+ gcc --version
34
+ g++ --version
35
+
36
+ - uses : actions/checkout@v4
37
+ name : Checkout catkin_simple
38
+ with :
39
+ repository : catkin/catkin_simple
40
+ ref : master
41
+ path : catkin_ws/src/catkin_simple
42
+
43
+ - uses : actions/checkout@v4
44
+ name : Checkout vrpn_catkin
45
+ with :
46
+ repository : ethz-asl/vrpn_catkin
47
+ path : catkin_ws/src/vrpn_catkin
48
+
49
+ - uses : actions/checkout@v4
50
+ name : Checkout glog_catkin
51
+ with :
52
+ path : catkin_ws/src/glog_catkin
53
+ repository : ethz-asl/glog_catkin
54
+
55
+ - uses : actions/checkout@v4
56
+ name : Checkout ros_vrpn_client
57
+ with :
58
+ repository : ethz-asl/ros_vrpn_client
59
+ path : catkin_ws/src/ros_vrpn_client
60
+
61
+ - name : Install tf2_eigen
62
+ run : apt update && apt install -y ros-${{ env.rosdistro }}-tf2-eigen
63
+ shell : bash
64
+
65
+ - name : Build vrpn_catkin
66
+ run : source /opt/ros/$rosdistro/setup.bash && catkin build ros_vrpn_client && source ${GITHUB_WORKSPACE}/catkin_ws/devel/setup.bash
67
+ working-directory : catkin_ws
68
+ shell : bash
0 commit comments