@@ -85,6 +85,13 @@ RUN rosdep keys --ignore-src --from-paths src \
85
85
| sort \
86
86
> /rosdep-universe-sensing-perception-depend-packages.txt \
87
87
&& cat /rosdep-universe-sensing-perception-depend-packages.txt
88
+ RUN rosdep keys --dependency-types=exec --ignore-src --from-paths src \
89
+ | xargs rosdep resolve --rosdistro ${ROS_DISTRO} \
90
+ | grep -v '^#' \
91
+ | sed 's/ \+ /\n /g' \
92
+ | sort \
93
+ > /rosdep-universe-sensing-perception-exec-depend-packages.txt \
94
+ && cat /rosdep-universe-sensing-perception-exec-depend-packages.txt
88
95
89
96
COPY src/launcher /autoware/src/launcher
90
97
COPY src/param /autoware/src/param
@@ -258,6 +265,40 @@ RUN --mount=type=cache,target=${CCACHE_DIR} \
258
265
ENTRYPOINT ["/ros_entrypoint.sh" ]
259
266
CMD ["/bin/bash" ]
260
267
268
+ FROM base AS universe-sensing-perception
269
+ SHELL ["/bin/bash" , "-o" , "pipefail" , "-c" ]
270
+ ARG ROS_DISTRO
271
+ ARG LIB_DIR
272
+ ARG SETUP_ARGS
273
+
274
+ # Set up runtime environment and artifacts
275
+ COPY --from=rosdep-depend /rosdep-universe-sensing-perception-exec-depend-packages.txt /tmp/rosdep-universe-sensing-perception-exec-depend-packages.txt
276
+ # hadolint ignore=SC2002
277
+ RUN --mount=type=ssh \
278
+ --mount=type=cache,target=/var/cache/apt,sharing=locked \
279
+ ./setup-dev-env.sh -y --module all ${SETUP_ARGS} --download-artifacts --no-cuda-drivers --runtime openadkit \
280
+ && pip uninstall -y ansible ansible-core \
281
+ && apt-get update \
282
+ && cat /tmp/rosdep-universe-sensing-perception-exec-depend-packages.txt | xargs apt-get install -y --no-install-recommends \
283
+ && apt-get autoremove -y && rm -rf "$HOME" /.cache \
284
+ && find /usr/lib/$LIB_DIR-linux-gnu -name "*.a" -type f -delete \
285
+ && find / -name "*.o" -type f -delete \
286
+ && find / -name "*.h" -type f -delete \
287
+ && find / -name "*.hpp" -type f -delete \
288
+ && rm -rf /autoware/ansible \
289
+ /root/.local/pipx /opt/ros/"$ROS_DISTRO" /include /etc/apt/sources.list.d/cuda*.list \
290
+ /etc/apt/sources.list.d/docker.list /etc/apt/sources.list.d/nvidia-docker.list \
291
+ /usr/include /usr/share/doc /usr/lib/gcc /usr/lib/jvm /usr/lib/llvm*
292
+
293
+ COPY --from=universe-sensing-perception-devel /opt/autoware /opt/autoware
294
+
295
+ # Copy bash aliases
296
+ COPY docker/etc/.bash_aliases /root/.bash_aliases
297
+ RUN echo "source /opt/autoware/setup.bash" > /etc/bash.bashrc
298
+
299
+ ENTRYPOINT ["/ros_entrypoint.sh" ]
300
+ CMD ["/bin/bash" ]
301
+
261
302
FROM base AS universe
262
303
SHELL ["/bin/bash" , "-o" , "pipefail" , "-c" ]
263
304
ARG ROS_DISTRO
0 commit comments