Skip to content

Commit

Permalink
Merge pull request #108 from osrf/ardent_support
Browse files Browse the repository at this point in the history
[ROS2]Ardent support
  • Loading branch information
mikaelarguedas authored Jan 25, 2018
2 parents c0078c7 + 48f5c86 commit 87cf6d7
Show file tree
Hide file tree
Showing 20 changed files with 343 additions and 78 deletions.
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ install:

env:
# ros2
- HUB_REPO=ros2 HUB_RELEASE=r2b3 HUB_OS_NAME=ubuntu HUB_OS_CODE_NAME=xenial
- HUB_REPO=ros2 HUB_RELEASE=ardent HUB_OS_NAME=ubuntu HUB_OS_CODE_NAME=xenial
# ros
- HUB_REPO=ros HUB_RELEASE=lunar HUB_OS_NAME=ubuntu HUB_OS_CODE_NAME=zesty
- HUB_REPO=ros HUB_RELEASE=lunar HUB_OS_NAME=ubuntu HUB_OS_CODE_NAME=xenial
Expand Down
8 changes: 7 additions & 1 deletion ros2/.config/Makefile.em
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,18 @@ help:

build:
@docker build --tag=osrf/ros2:$release_name-core $release_name-core/.
@docker build --tag=osrf/ros2:$release_name-ros1-bridge $release_name-ros1-bridge/.
@docker build --tag=osrf/ros2:$release_name-basic $release_name-basic/.
@docker build --tag=osrf/ros2:$release_name-full $release_name-full/.
@docker build --tag=osrf/ros2:$release_name-ros1-bridge $release_name-ros1-bridge/.

pull:
@docker pull osrf/ros2:$release_name-core
@docker pull osrf/ros2:$release_name-basic
@docker pull osrf/ros2:$release_name-full
@docker pull osrf/ros2:$release_name-ros1-bridge

clean:
@docker rmi -f osrf/ros2:$release_name-core
@docker rmi -f osrf/ros2:$release_name-basic
@docker rmi -f osrf/ros2:$release_name-full
@docker rmi -f osrf/ros2:$release_name-ros1-bridge
59 changes: 58 additions & 1 deletion ros2/.config/images.yaml.em
Original file line number Diff line number Diff line change
Expand Up @@ -7,23 +7,80 @@ images:
maintainer_name: @(maintainer_name)
template_name: docker_images/create_ros2_core_image.Dockerfile.em
entrypoint_name: docker_images/ros2_entrypoint.sh
template_packages:
- docker_templates
packages:
- python3-pip
ros2_packages:
- rclcpp
- rclpy
@(ros2distro_name)-basic:
base_image: osrf/@(user_name):@(ros2distro_name)-core
maintainer_name: @(maintainer_name)
template_name: docker_images/create_ros2_image.Dockerfile.em
entrypoint_name: docker_images/ros2_entrypoint.sh
template_packages:
- docker_templates
packages:
- python3-pip
pip3_install:
- argcomplete
ros2_packages:
- common-interfaces
- composition
- demo-nodes-cpp
- demo-nodes-cpp-native
- demo-nodes-py
- examples*
- launch
- lifecycle
- logging-demo
- ros2msg
- ros2node
- ros2pkg
- ros2run
- ros2service
- ros2srv
- ros2topic
- sros2
- tf2*
- tlsf*
- topic-monitor
@(ros2distro_name)-full:
base_image: osrf/@(user_name):@(ros2distro_name)-basic
maintainer_name: @(maintainer_name)
template_name: docker_images/create_ros2_image.Dockerfile.em
entrypoint_name: docker_images/ros2_entrypoint.sh
template_packages:
- docker_templates
ros2_packages:
- astra-camera
- cartographer-ros
- depthimage-to-laserscan
- depthimage-to-pointcloud2
- dummy-map-server
- dummy-robot-bringup
- dummy-sensors
- image-tools
- intra-process-demo
- joy
- launch-testing
- map-server
- pcl-conversions
- pendulum-control
- robot-state-publisher
- rosidl-default-generators
- rviz2
- rviz-default-plugins
- teleop-twist-joy
- teleop-twist-keyboard
@(ros2distro_name)-ros1-bridge:
base_image: osrf/@(user_name):@(ros2distro_name)-core
base_image: osrf/@(user_name):@(ros2distro_name)-full
maintainer_name: @(maintainer_name)
template_name: docker_images/create_ros2_image.Dockerfile.em
entrypoint_name: docker_images/ros1_bridge_entrypoint.sh
template_packages:
- docker_templates
ros2_packages:
- ros1-bridge
- turtlebot2*
28 changes: 28 additions & 0 deletions ros2/ardent/ubuntu/xenial/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
all: help

help:
@echo ""
@echo "-- Help Menu"
@echo ""
@echo " 1. make build - build all images"
@echo " 2. make pull - pull all images"
@echo " 3. make clean - remove all images"
@echo ""

build:
@docker build --tag=osrf/ros2:ardent-core ardent-core/.
@docker build --tag=osrf/ros2:ardent-basic ardent-basic/.
@docker build --tag=osrf/ros2:ardent-full ardent-full/.
@docker build --tag=osrf/ros2:ardent-ros1-bridge ardent-ros1-bridge/.

pull:
@docker pull osrf/ros2:ardent-core
@docker pull osrf/ros2:ardent-basic
@docker pull osrf/ros2:ardent-full
@docker pull osrf/ros2:ardent-ros1-bridge

clean:
@docker rmi -f osrf/ros2:ardent-core
@docker rmi -f osrf/ros2:ardent-basic
@docker rmi -f osrf/ros2:ardent-full
@docker rmi -f osrf/ros2:ardent-ros1-bridge
40 changes: 40 additions & 0 deletions ros2/ardent/ubuntu/xenial/ardent-basic/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# This is an auto generated Dockerfile for ros2:ardent-basic
# generated from docker_images/create_ros2_image.Dockerfile.em
FROM osrf/ros2:ardent-core

# install packages
RUN apt-get update && apt-get install -q -y \
python3-pip \
&& rm -rf /var/lib/apt/lists/*

# install python packages
RUN pip3 install -U \
argcomplete
# install ros2 packages
RUN apt-get update && apt-get install -y \
ros-ardent-common-interfaces \
ros-ardent-composition \
ros-ardent-demo-nodes-cpp \
ros-ardent-demo-nodes-cpp-native \
ros-ardent-demo-nodes-py \
ros-ardent-examples* \
ros-ardent-launch \
ros-ardent-lifecycle \
ros-ardent-logging-demo \
ros-ardent-ros2msg \
ros-ardent-ros2node \
ros-ardent-ros2pkg \
ros-ardent-ros2run \
ros-ardent-ros2service \
ros-ardent-ros2srv \
ros-ardent-ros2topic \
ros-ardent-sros2 \
ros-ardent-tf2* \
ros-ardent-tlsf* \
ros-ardent-topic-monitor \
&& rm -rf /var/lib/apt/lists/*

# setup entrypoint
COPY ./ros2_entrypoint.sh /

ENTRYPOINT ["/ros2_entrypoint.sh"]
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# This is an auto generated Dockerfile for ros2:r2b3-core
# This is an auto generated Dockerfile for ros2:ardent-core
# generated from docker_images/create_ros2_core_image.Dockerfile.em
FROM ubuntu:xenial

Expand All @@ -20,23 +20,18 @@ RUN . /etc/os-release \
ENV LANG C.UTF-8
ENV LC_ALL C.UTF-8
ENV ROS_DISTRO kinetic
ENV ROS2_DISTRO r2b3
ENV ROS2_DISTRO ardent

# install packages
RUN apt-get update && apt-get install -q -y \
python3-pip \
&& rm -rf /var/lib/apt/lists/*

# install python packages
RUN pip3 install -U \
argcomplete

# install ros2 packages
RUN apt-get update && apt-get install -y \
ros-r2b3-demo-nodes-cpp \
ros-r2b3-demo-nodes-py \
ros-r2b3-ros2run \
ros-r2b3-sros2 \
ros-ardent-rclcpp \
ros-ardent-rclpy \
&& rm -rf /var/lib/apt/lists/*

# setup entrypoint
Expand Down
6 changes: 6 additions & 0 deletions ros2/ardent/ubuntu/xenial/ardent-core/ros2_entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#!/bin/bash
set -e

# setup ros2 environment
source "/opt/ros/$ROS2_DISTRO/setup.bash"
exec "$@"
32 changes: 32 additions & 0 deletions ros2/ardent/ubuntu/xenial/ardent-full/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# This is an auto generated Dockerfile for ros2:ardent-full
# generated from docker_images/create_ros2_image.Dockerfile.em
FROM osrf/ros2:ardent-basic

# install ros2 packages
RUN apt-get update && apt-get install -y \
ros-ardent-astra-camera \
ros-ardent-cartographer-ros \
ros-ardent-depthimage-to-laserscan \
ros-ardent-depthimage-to-pointcloud2 \
ros-ardent-dummy-map-server \
ros-ardent-dummy-robot-bringup \
ros-ardent-dummy-sensors \
ros-ardent-image-tools \
ros-ardent-intra-process-demo \
ros-ardent-joy \
ros-ardent-launch-testing \
ros-ardent-map-server \
ros-ardent-pcl-conversions \
ros-ardent-pendulum-control \
ros-ardent-robot-state-publisher \
ros-ardent-rosidl-default-generators \
ros-ardent-rviz2 \
ros-ardent-rviz-default-plugins \
ros-ardent-teleop-twist-joy \
ros-ardent-teleop-twist-keyboard \
&& rm -rf /var/lib/apt/lists/*

# setup entrypoint
COPY ./ros2_entrypoint.sh /

ENTRYPOINT ["/ros2_entrypoint.sh"]
6 changes: 6 additions & 0 deletions ros2/ardent/ubuntu/xenial/ardent-full/ros2_entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#!/bin/bash
set -e

# setup ros2 environment
source "/opt/ros/$ROS2_DISTRO/setup.bash"
exec "$@"
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
# This is an auto generated Dockerfile for ros2:r2b3-ros1-bridge
# This is an auto generated Dockerfile for ros2:ardent-ros1-bridge
# generated from docker_images/create_ros2_image.Dockerfile.em
FROM osrf/ros2:r2b3-core
FROM osrf/ros2:ardent-full

# install ros2 packages
RUN apt-get update && apt-get install -y \
ros-r2b3-ros1-bridge \
ros-ardent-ros1-bridge \
ros-ardent-turtlebot2* \
&& rm -rf /var/lib/apt/lists/*

# setup entrypoint
Expand Down
87 changes: 87 additions & 0 deletions ros2/ardent/ubuntu/xenial/images.yaml.em
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
%YAML 1.1
# ROS2 Dockerfile database
---
images:
@(ros2distro_name)-core:
base_image: @(os_name):@(os_code_name)
maintainer_name: @(maintainer_name)
template_name: docker_images/create_ros2_core_image.Dockerfile.em
entrypoint_name: docker_images/ros2_entrypoint.sh
template_packages:
- docker_templates
packages:
- python3-pip
ros2_packages:
- rclcpp
- rclpy
@(ros2distro_name)-basic:
base_image: osrf/@(user_name):@(ros2distro_name)-core
maintainer_name: @(maintainer_name)
template_name: docker_images/create_ros2_image.Dockerfile.em
entrypoint_name: docker_images/ros2_entrypoint.sh
template_packages:
- docker_templates
packages:
- python3-pip
pip3_install:
- argcomplete
ros2_packages:
- common-interfaces
- composition
- demo-nodes-cpp
- demo-nodes-cpp-native
- demo-nodes-py
- examples*
- launch
- lifecycle
- logging-demo
- ros2msg
- ros2node
- ros2pkg
- ros2run
- ros2service
- ros2srv
- ros2topic
- sros2
- tf2*
- tlsf*
- topic-monitor
@(ros2distro_name)-full:
base_image: osrf/@(user_name):@(ros2distro_name)-basic
maintainer_name: @(maintainer_name)
template_name: docker_images/create_ros2_image.Dockerfile.em
entrypoint_name: docker_images/ros2_entrypoint.sh
template_packages:
- docker_templates
ros2_packages:
# - ament*
- astra-camera
- cartographer-ros
- depthimage-to-laserscan
- depthimage-to-pointcloud2
- dummy-map-server
- dummy-robot-bringup
- dummy-sensors
- image-tools
- intra-process-demo
- joy
- launch-testing
- map-server
- pcl-conversions
- pendulum-control
- robot-state-publisher
- rosidl-default-generators
- rviz2
- rviz-default-plugins
- teleop-twist-joy
- teleop-twist-keyboard
@(ros2distro_name)-ros1-bridge:
base_image: osrf/@(user_name):@(ros2distro_name)-full
maintainer_name: @(maintainer_name)
template_name: docker_images/create_ros2_image.Dockerfile.em
entrypoint_name: docker_images/ros1_bridge_entrypoint.sh
template_packages:
- docker_templates
ros2_packages:
- ros1-bridge
- turtlebot2*
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ platform:
os_name: ubuntu
os_code_name: xenial
rosdistro_name: kinetic
ros2distro_name: r2b3
ros2distro_name: ardent
user_name: ros2
maintainer_name:
arch: amd64
Expand Down
Loading

0 comments on commit 87cf6d7

Please sign in to comment.