@@ -4,24 +4,54 @@ on: [push, pull_request]
44
55jobs :
66 build_and_test :
7- runs-on : ubuntu-18 .04
7+ runs-on : ubuntu-20 .04
88 steps :
99 - name : Install Java
1010 run : |
1111 sudo apt-get update -qq
1212 sudo apt-get install -y default-jdk gradle
1313 - uses : actions/checkout@v2
14- - uses : ros-tooling/setup-ros@0.2.1
14+ - uses : ros-tooling/setup-ros@v0.2
1515 with :
16- required-ros-distributions : dashing
16+ required-ros-distributions : galactic
1717 - uses : ros-tooling/action-ros-ci@v0.2
1818 with :
1919 package-name : rosidl_generator_java rcljava_common rcljava
20- target-ros2-distro : dashing
20+ target-ros2-distro : galactic
2121 vcs-repo-file-url : ${{ github.workspace }}/ros2_java_desktop.repos
2222
2323 build_android :
24- runs-on : ubuntu-18.04
24+ runs-on : ubuntu-20.04
25+ strategy :
26+ fail-fast : false
27+ matrix :
28+ include :
29+ - colcon_meta : |
30+ {
31+ "names": {
32+ "rcl": {
33+ "cmake-args": [ "-DBUILD_TESTING=OFF" ]
34+ },
35+ "rcl_yaml_param_parser": {
36+ "cmake-args": [ "-DBUILD_TESTING=OFF" ]
37+ },
38+ "rclcpp": {
39+ "cmake-args": [ "-DBUILD_TESTING=OFF" ]
40+ },
41+ "rclcpp_action": {
42+ "cmake-args": [ "-DBUILD_TESTING=OFF" ]
43+ },
44+ "rclcpp_lifecycle": {
45+ "cmake-args": [ "-DBUILD_TESTING=OFF" ]
46+ },
47+ "rcutils": {
48+ "cmake-args": [ "-DBUILD_TESTING=OFF" ]
49+ },
50+ "rosidl_typesupport_c": {
51+ "cmake-args": [ "-DBUILD_TESTING=OFF" ]
52+ },
53+ }
54+ }
2555 steps :
2656 - name : Install Java
2757 run : |
@@ -43,20 +73,25 @@ jobs:
4373 sudo apt-get update && sudo apt-get install -y python3-colcon-common-extensions python3-vcstool python3-lark-parser python3-dev
4474 - name : Install colcon extensions for Gradle
4575 run : |
46- sudo pip3 install git+git ://github.com/colcon/colcon-gradle.git
47- sudo pip3 install git+git ://github.com/colcon/colcon-ros-gradle.git
76+ sudo pip3 install git+https ://github.com/colcon/colcon-gradle.git
77+ sudo pip3 install git+https ://github.com/colcon/colcon-ros-gradle.git
4878 - name : Install Android NDK
4979 run : |
5080 curl -LO https://dl.google.com/android/repository/android-ndk-r21d-linux-x86_64.zip
5181 unzip android-ndk-r21d-linux-x86_64.zip
82+ - name : Install QEMU emulation binaries
83+ run : |
84+ sudo apt-get update && sudo apt-get install -y qemu-user
5285 - name : Setup workspace with VCS repo file
5386 run : |
5487 mkdir -p ros2_java_ws/src
5588 cd ros2_java_ws
5689 curl -sL file://${{ github.workspace }}/ros2_java_android.repos | vcs import src
5790 # Use checked out version of ros2_java
58- rm -rf src/ros2_java/ros2_java
59- ln --symbolic ${{ github.workspace }} src/ros2_java
91+ rm -rf src/ros2-java/ros2_java
92+ ln --symbolic ${{ github.workspace }} src/ros2-java
93+ - name : Create colcon defaults file
94+ run : printf "${{matrix.colcon_meta}}" > ${{ github.workspace }}/colcon.meta
6095 - name : Build ros2_java for Android
6196 run : |
6297 export PYTHON3_EXEC="$( which python3 )"
@@ -69,9 +104,11 @@ jobs:
69104
70105 cd ros2_java_ws
71106 colcon build \
72- --packages-ignore cyclonedds rcl_logging_log4cxx rosidl_generator_py \
107+ --packages-ignore cyclonedds rcl_logging_spdlog rcl_logging_log4cxx rosidl_generator_py \
73108 --packages-up-to rcljava \
109+ --metas ${{ github.workspace }}/colcon.meta \
74110 --cmake-args \
111+ -DRCL_LOGGING_IMPLEMENTATION=rcl_logging_noop \
75112 -DPYTHON_EXECUTABLE=${PYTHON3_EXEC} \
76113 -DPYTHON_LIBRARY=${PYTHON3_LIBRARY} \
77114 -DPYTHON_INCLUDE_DIR=${PYTHON3_INCLUDE_DIR} \
82119 -DANDROID_STL=c++_shared \
83120 -DANDROID_ABI=${ANDROID_ABI} \
84121 -DANDROID_NDK=${ANDROID_NDK} \
122+ -DANDROID=ON \
123+ -DTHIRDPARTY_android-ifaddrs=FORCE \
85124 -DTHIRDPARTY=ON \
86125 -DCOMPILE_EXAMPLES=OFF \
87- -DCMAKE_FIND_ROOT_PATH="${PWD}/install"
126+ -DCMAKE_FIND_ROOT_PATH="${PWD}/install" \
127+ -DCMAKE_CROSSCOMPILING_EMULATOR="/usr/bin/qemu-arm"
0 commit comments