Skip to content

Commit 9c75dcb

Browse files
authored
Merge pull request #270 from ROBOTIS-GIT/feature-om-xy
Merge OM-X and OM-Y into a unified repository
2 parents 6320719 + db66fe8 commit 9c75dcb

File tree

204 files changed

+12019
-3189
lines changed

Some content is hidden

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

204 files changed

+12019
-3189
lines changed

.github/workflows/ros-ci.yml

Lines changed: 44 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,68 @@
1-
name: ros-ci
1+
# The name of the workflow
2+
name: CI
23

4+
# Specifies the events that trigger the workflow
35
on:
46
push:
5-
branches: [ master, main, humble ]
7+
branches: [ main, jazzy ]
68
pull_request:
7-
branches: [ master, main, humble ]
9+
branches: [ main, jazzy ]
810

11+
# Defines a set of jobs to be run as part of the workflow
912
jobs:
10-
ros2-ci:
11-
runs-on: ubuntu-latest
13+
# The name of the job
14+
ROS_CI:
15+
runs-on: ubuntu-22.04
1216
strategy:
1317
fail-fast: false
1418
matrix:
1519
ros_distribution:
16-
- humble
20+
# - humble
21+
- jazzy
22+
- rolling
1723
include:
18-
- docker_image: rostooling/setup-ros-docker:ubuntu-jammy-ros-humble-ros-base-latest
19-
ros_distribution: humble
24+
# ROS 2 Humble Hawksbill
25+
# - docker_image: ubuntu:jammy
26+
# ros_distribution: humble
27+
# ros_version: 2
28+
# ROS 2 Jazzy Jalisco
29+
- docker_image: ubuntu:noble
30+
ros_distribution: jazzy
31+
ros_version: 2
32+
# ROS 2 Rolling Ridley
33+
- docker_image: ubuntu:noble
34+
ros_distribution: rolling
2035
ros_version: 2
2136
container:
2237
image: ${{ matrix.docker_image }}
2338
steps:
24-
- name: Setup directories
39+
- name: Setup workspace
2540
run: mkdir -p ros_ws/src
26-
- name: checkout
41+
42+
- name: Checkout code
2743
uses: actions/checkout@v4
2844
with:
2945
path: ros_ws/src
46+
47+
- name: Setup ROS environment
48+
uses: ros-tooling/[email protected]
49+
with:
50+
required-ros-distributions: ${{ matrix.ros_distribution }}
51+
3052
- name: Build and Test
3153
uses: ros-tooling/[email protected]
54+
3255
with:
33-
package-name: open_manipulator
3456
target-ros2-distro: ${{ matrix.ros_distribution }}
3557
vcs-repo-file-url: ""
58+
package-name: |
59+
open_manipulator
60+
open_manipulator_bringup
61+
open_manipulator_description
62+
open_manipulator_gui
63+
open_manipulator_moveit_config
64+
open_manipulator_playground
65+
open_manipulator_teleop
66+
om_gravity_compensation_controller
67+
om_joint_trajectory_command_broadcaster
68+
om_spring_actuator_controller

.github/workflows/ros-lint.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# The name of the workflow
2+
name: Lint
3+
4+
# Specifies the events that trigger the workflow
5+
on:
6+
pull_request:
7+
8+
# Defines a set of jobs to be run as part of the workflow
9+
jobs:
10+
ament_lint:
11+
runs-on: ubuntu-latest
12+
container:
13+
image: rostooling/setup-ros-docker:ubuntu-noble-ros-rolling-ros-base-latest
14+
strategy:
15+
fail-fast: false
16+
matrix:
17+
linter: [cppcheck, uncrustify, pep257, lint_cmake, xmllint]
18+
steps:
19+
- name: Checkout code
20+
uses: actions/checkout@v4
21+
22+
- name: Setup ROS environment
23+
uses: ros-tooling/[email protected]
24+
25+
- name: Run Linter
26+
env:
27+
AMENT_CPPCHECK_ALLOW_SLOW_VERSIONS: 1
28+
uses: ros-tooling/action-ros-lint@master
29+
with:
30+
linter: ${{ matrix.linter }}
31+
distribution: rolling
32+
package-name: "*"

Dockerfile

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,40 @@
1-
# Use the base ROS2 humble image
2-
FROM ros:humble
1+
# Use the base ROS2 Jazzy image
2+
FROM ros:jazzy-ros-base
33

44
# Set environment variables
55
ENV DEBIAN_FRONTEND=noninteractive
66

77
# Install system dependencies
88
RUN apt-get update && apt-get install -y \
9+
ros-${ROS_DISTRO}-hardware-interface \
10+
ros-${ROS_DISTRO}-dynamixel-sdk \
911
libboost-all-dev \
1012
ros-${ROS_DISTRO}-controller-manager \
1113
ros-${ROS_DISTRO}-ros2-controllers \
12-
ros-${ROS_DISTRO}-moveit \
14+
ros-${ROS_DISTRO}-tf-transformations \
15+
ros-${ROS_DISTRO}-gz* \
16+
ros-${ROS_DISTRO}-pal-statistics \
17+
vim \
18+
&& apt-get install -y ros-${ROS_DISTRO}-moveit-* --no-install-recommends \
1319
&& rm -rf /var/lib/apt/lists/*
1420

1521
ENV COLCON_WS=/root/colcon_ws
1622
WORKDIR ${COLCON_WS}
1723

1824
RUN mkdir -p ${COLCON_WS}/src && \
1925
cd ${COLCON_WS}/src && \
20-
git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git && \
21-
git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git && \
22-
git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git && \
23-
git clone -b humble https://github.com/ROBOTIS-GIT/open_manipulator.git
26+
git clone -b jazzy https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git && \
27+
git clone -b jazzy https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git && \
28+
git clone -b jazzy https://github.com/ROBOTIS-GIT/DynamixelSDK.git && \
29+
git clone -b jazzy https://github.com/ros-controls/gz_ros2_control
2430

2531
RUN bash -c "source /opt/ros/${ROS_DISTRO}/setup.bash && \
2632
cd ${COLCON_WS} && \
2733
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release"
2834

29-
RUN echo "source /opt/ros/${ROS_DISTRO}/setup.bash" >> ~/.bashrc
30-
RUN echo "source ${COLCON_WS}/install/setup.bash" >> ~/.bashrc
35+
RUN echo "source /opt/ros/${ROS_DISTRO}/setup.bash" >> ~/.bashrc && \
36+
echo "source ${COLCON_WS}/install/setup.bash" >> ~/.bashrc && \
37+
echo "alias cb='colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release'" >> ~/.bashrc && \
38+
echo "export ROBOT_MODEL=om_y_follower" >> ~/.bashrc
3139

3240
CMD ["bash"]

0 commit comments

Comments
 (0)