Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
2
210910794
Manage
Activity
Members
Labels
Plan
Wiki
Code
Merge requests
0
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Deploy
Releases
Package Registry
Operate
Terraform modules
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Summer2021
210910794
Commits
62902ee5
Commit
62902ee5
authored
5 years ago
by
ruffsl
Browse files
Options
Downloads
Patches
Plain Diff
Include navigation2 in source build
parent
96a08878
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
Dockerfile.full_ros_build
+41
-9
41 additions, 9 deletions
Dockerfile.full_ros_build
with
41 additions
and
9 deletions
Dockerfile.full_ros_build
+
41
−
9
View file @
62902ee5
# This dockerfile expects to be contained in the /navigation2 root folder for file copy
#
# Example build command:
# This determines which version of the ROS2 code base to pull
# export ROS2_BRANCH=master
# docker build -t nav2:full_ros_build
# -f Dockerfile.full_ros_build ./
#
# We're only building on top of a ros2 devel image to get the basics
# prerequisites installed such as the apt source, rosdep, etc. We don't want to
# actually use any of the ros dashing packages. Instead we are going to build
# everything from source in one big workspace.
ARG FROM_IMAGE=osrf/ros2:devel
FROM $FROM_IMAGE
...
...
@@ -8,17 +21,33 @@ RUN apt-get update && apt-get install -q -y \
wget \
&& rm -rf /var/lib/apt/lists/*
ARG ROS
_DISTRO=dashing
ENV ROS
_DISTRO=$ROS_DISTRO
ARG ROS
2_BRANCH=master
ENV ROS
2_BRANCH=$ROS2_BRANCH
ENV ROS_VERSION=2 \
ROS_PYTHON_VERSION=3
WORKDIR $ROS2_WS
RUN wget https://raw.githubusercontent.com/ros2/ros2/$ROS
_DISTRO-release
/ros2.repos \
RUN wget https://raw.githubusercontent.com/ros2/ros2/$ROS
2_BRANCH
/ros2.repos \
&& vcs import src < ros2.repos
# install dependencies
# install ros2 dependencies
RUN apt-get update && rosdep install -y \
--from-paths src \
--ignore-src \
--skip-keys "console_bridge fastcdr fastrtps libopensplice67 libopensplice69 rti-connext-dds-5.3.1 urdfdom_headers" \
&& rm -rf /var/lib/apt/lists/*
# copy nav2 source code
ENV NAV2_DIR $ROS2_WS/src/navigation2
COPY ./ src/navigation2/
# clone dependency package repos
ENV NAV2_DEPS_DIR $ROS2_WS/src/navigation2_dependencies
RUN mkdir -p $NAV2_DEPS_DIR
RUN vcs import src < $NAV2_DIR/tools/ros2_dependencies.repos
# install nav2 dependencies
RUN apt-get update && rosdep install -y \
--from-paths src \
--ignore-src \
...
...
@@ -26,11 +55,14 @@ RUN apt-get update && rosdep install -y \
&& rm -rf /var/lib/apt/lists/*
# build source
RUN colcon \
build \
--symlink-install \
--mixin build-testing-on release \
--cmake-args --no-warn-unused-cli
ARG MIXINS="build-testing-on release"
RUN colcon build \
--symlink-install \
--mixin \
$MIXINS \
--packages-up-to \
nav2_system_tests \
--cmake-args --no-warn-unused-cli
ARG RUN_TESTS
ARG FAIL_ON_TEST_FAILURE
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment