Skip to content

Commit f031200

Browse files
Build Stack with Colcon (#2401)
* migrate rj_constants to use colcon * migrate rj_convert to use colcon * migrate rj_protos to use colcon * migrate rj_param_utils to colcon * migrate rj_topic_utils to colcon * migrate rj_geometry_msgs to colcon * migrate rj_msgs to colcon * migrate rj_drawing_msgs to colcon * convert rj_utils to colcon * migrate rj_geometry to colcon * convert rj_common to colcon * migrate rj_config_client and rj_config_server to colcon * convert rj_vision_receiver to use colcon * successfully build all packages with colcon build * migrate rj_planning to colcon and create package for rj_rrt * migration complete... Looking for reviews * Fix Code Style On colcon-migration (#2402) automated style fixes Co-authored-by: N8BWert <N8BWert@users.noreply.github.com> * update ci to use colcon test * Fix Code Style On colcon-migration (#2403) automated style fixes Co-authored-by: N8BWert <N8BWert@users.noreply.github.com> * update ci * remove submodules from ci * just build and test * only build with 4 workers * install dev tools * download all dependencies before starting script * only source install/setup.bash if it exists --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: N8BWert <N8BWert@users.noreply.github.com>
1 parent 9940947 commit f031200

685 files changed

Lines changed: 9471 additions & 7185 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/ci.yml

Lines changed: 5 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -7,54 +7,24 @@ jobs:
77
build-and-test:
88
runs-on: ubuntu-latest
99
container:
10-
image: robojackets/robocup-software:humble
10+
image: osrf/ros:humble-desktop-full
1111
defaults:
1212
run:
1313
shell: bash
1414
steps:
15-
- name: Config git
16-
run: "git config --global --add safe.directory /__w/robocup-software/robocup-software"
17-
1815
- name: Check out repository
19-
uses: actions/checkout@v2
16+
uses: actions/checkout@v3
2017
with:
2118
fetch-depth: 0
2219

2320
- name: Run util/ubuntu-setup as sudo
24-
run: "sudo ./util/ubuntu-setup --yes"
25-
26-
- name: Install git pre-commit hooks & update submodules
27-
run: "./util/git-setup --yes"
28-
29-
- name: Make ${{ github.base_ref }} branch exist
30-
run: |
31-
git checkout -b ${{ github.base_ref }} --track origin/${{ github.base_ref }}
32-
git checkout -
21+
run: "./util/ubuntu-setup -y"
3322

3423
- name: Build
35-
run: |
36-
echo "::add-matcher::ci/clang.json"
37-
source /opt/ros/humble/setup.bash
38-
source install/setup.bash
39-
make all
40-
echo "::remove-matcher owner=clang::"
24+
run: source /opt/ros/humble/setup.bash && colcon build --parallel-workers 4
4125

4226
- name: Test
43-
run: |
44-
echo "::add-matcher::ci/gtest.json"
45-
source /opt/ros/humble/setup.bash
46-
source install/setup.bash
47-
./install/lib/rj_robocup/test-soccer
48-
echo "::remove-matcher owner=gtest::"
49-
50-
- name: Run clang-tidy
51-
run: |
52-
echo "::add-matcher::ci/clang-tidy.json"
53-
source /opt/ros/humble/setup.bash
54-
source install/setup.bash
55-
DIFFBASE=${{ github.base_ref }} make checktidy-lines
56-
echo "::remove-matcher owner=clang-tidy::"
57-
if: always()
27+
run: source /opt/ros/humble/setup.bash && colcon test
5828

5929
fix-style:
6030
# Check if the PR is not raised by this workflow

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,3 +51,8 @@ launch/debug-*
5151
# clangd
5252
.clangd/
5353
compile_commands.json
54+
55+
# Colcon Build Things
56+
build/
57+
install/
58+
log/

.gitmodules

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,3 @@
1-
[submodule "external/googletest"]
2-
path = external/googletest
3-
url = https://github.com/google/googletest
41
[submodule "external/style-configs"]
52
path = external/style-configs
63
url = https://github.com/robojackets/style-configs
7-
[submodule "external/rrt"]
8-
path = external/rrt
9-
url = https://github.com/robojackets/rrt
10-
[submodule "external/robocup-fshare"]
11-
path = external/robocup-fshare
12-
url = https://github.com/robojackets/robocup-fshare
13-
[submodule "external/sdlcontrollerdb"]
14-
path = external/sdlcontrollerdb
15-
url = https://github.com/gabomdq/SDL_GameControllerDB

CMakeLists.txt

Lines changed: 0 additions & 139 deletions
This file was deleted.

Dockerfile.dev

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Use the official Ubuntu 22.04 image
2-
FROM ubuntu:22.04
2+
FROM osrf/ros:humble-desktop-full
33

44
# Set environment variables for non-interactive installation
55
ENV DEBIAN_FRONTEND=noninteractive
@@ -48,20 +48,10 @@ RUN mkdir -p /root/.vnc && \
4848
echo "#!/bin/bash\nxrdb $HOME/.Xresources\nstartxfce4 &" > /root/.vnc/xstartup && \
4949
chmod +x /root/.vnc/xstartup
5050

51-
# Clone RoboJackets RoboCup software and install dependencies
52-
RUN git clone https://github.com/RoboJackets/robocup-software.git /root/robocup-software
53-
5451
# Set timezone to avoid interactive prompt
5552
ENV TZ=America/New_York
5653
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
5754

58-
# Install dependencies
59-
RUN cd /root/robocup-software && \
60-
./util/ubuntu-setup -y || { echo 'ubuntu-setup script failed' ; exit 1; }
61-
62-
RUN cd /root/robocup-software && \
63-
./util/git-setup || { echo 'git-setup script failed' ; exit 1; }
64-
6555
# Clone and build ER-Force’s simulator
6656
RUN git clone https://github.com/robotics-erlangen/framework.git /root/framework && \
6757
cd /root/framework && \
@@ -77,12 +67,6 @@ RUN git clone https://github.com/robotics-erlangen/autoref.git /root/autoref &&
7767
cmake .. && \
7868
make
7969

80-
# Use bash to source the ROS2 setup file and run make perf
81-
RUN bash -c "source /opt/ros/humble/setup.bash && \
82-
cd /root/robocup-software && \
83-
make perf && \
84-
source install/setup.bash"
85-
8670
# Install external ref (conditionally download the correct binary based on architecture)
8771
RUN cd /root && \
8872
if [ "$TARGETARCH" = "amd64" ]; then \
@@ -92,6 +76,13 @@ RUN cd /root && \
9276
fi && \
9377
chmod +x ssl-game-controller_v3.12.3_linux_*
9478

79+
# Install Robocup Dependencies
80+
RUN mkdir -p /util
81+
COPY ./util/ubuntu-setup /ubuntu-setup
82+
COPY ./util/ubuntu-packages.txt /util/ubuntu-packages.txt
83+
COPY ./util/requirements3.txt /util/requirements3.txt
84+
RUN /ubuntu-setup -y || { echo 'ubuntu-setup script failed' ; exit 1; }
85+
9586
# Expose the VNC, noVNC, and external ref ports
9687
EXPOSE 5901 6080 8081
9788

external/CMakeLists.txt

Lines changed: 0 additions & 3 deletions
This file was deleted.

external/googletest

Lines changed: 0 additions & 1 deletion
This file was deleted.

external/readme.md

Lines changed: 0 additions & 16 deletions
This file was deleted.

external/robocup-fshare

Lines changed: 0 additions & 1 deletion
This file was deleted.

external/rrt

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)