From 65131c7dca12d9eb27153da3c6fbe5bc2a1f2388 Mon Sep 17 00:00:00 2001 From: Lei Wang Date: Fri, 13 Oct 2017 18:00:52 -0700 Subject: [PATCH] Host ROS package in docker image. --- docker/scripts/dev_start.sh | 2 +- scripts/docker_adduser.sh | 24 ++++++++++++++++-------- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/docker/scripts/dev_start.sh b/docker/scripts/dev_start.sh index 972bb5e14c..0e5650c0ec 100755 --- a/docker/scripts/dev_start.sh +++ b/docker/scripts/dev_start.sh @@ -18,7 +18,7 @@ VERSION="" ARCH=$(uname -m) -VERSION_X86_64="dev-x86_64-20171010_1541" +VERSION_X86_64="dev-x86_64-20171013_1336" VERSION_AARCH64="dev-aarch64-20170927_1111" if [[ $# == 1 ]];then VERSION=$1 diff --git a/scripts/docker_adduser.sh b/scripts/docker_adduser.sh index d0986ae447..802103f59b 100755 --- a/scripts/docker_adduser.sh +++ b/scripts/docker_adduser.sh @@ -33,6 +33,8 @@ if [ -e /dev/ttyUSB0 ]; then sudo chmod a+rw /dev/ttyUSB0 /dev/ttyUSB1 fi +MACHINE_ARCH=$(uname -m) +ROS_TAR="ros-indigo-apollo-1.5.0-${MACHINE_ARCH}.tar.gz" if [ "$RELEASE_DOCKER" != "1" ];then # setup map data if [ -e /home/tmp/modules_data ]; then @@ -40,14 +42,20 @@ if [ "$RELEASE_DOCKER" != "1" ];then chown -R ${DOCKER_USER}:${DOCKER_GRP} "/apollo/modules" fi - # setup car specific configuration - if [ -e /home/tmp/esd_can ]; then - cp -r /home/tmp/esd_can/include /apollo/third_party/can_card_library/esd_can - cp -r /home/tmp/esd_can/lib /apollo/third_party/can_card_library/esd_can - chown -R ${DOCKER_USER}:${DOCKER_GRP} "/apollo/third_party/can_card_library/esd_can" + # setup ros package + # this is a tempary solution to avoid ros package downloading. + MD5="$(echo -n '/apollo' | md5sum | cut -d' ' -f1)" + EXTERNAL="/home/${DOCKER_USER}/.cache/bazel/_bazel_${USER}/${MD5}/external" + if [ ! -e "$EXTERNAL" ];then + mkdir -p $EXTERNAL + chown -R ${DOCKER_USER}:${DOCKER_GRP} "${EXTERNAL}" fi - if [ -e /home/tmp/gnss_conf ]; then - cp -r /home/tmp/gnss_conf/* /apollo/modules/drivers/gnss/conf/ - chown -R ${DOCKER_USER}:${DOCKER_GRP} "/apollo/modules/drivers/gnss/conf/" + ROS="${EXTERNAL}/ros" + if [ -e "$ROS" ]; then + rm -rf $ROS fi + tar xzf "/home/tmp/${ROS_TAR}" -C $EXTERNAL + cd $ROS + ln -s /apollo/third_party/ros.BUILD BUILD.bazel + chown -R ${DOCKER_USER}:${DOCKER_GRP} "${ROS}" fi -- GitLab