Skip to content

Commit 60b2c0f

Browse files
Make deps intallation optional
1 parent 6066a42 commit 60b2c0f

File tree

1 file changed

+30
-23
lines changed

1 file changed

+30
-23
lines changed

setup_workspace.sh

Lines changed: 30 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ usage() {
55
printf "Setup vscode workspace for specified container\n\n"
66
printf "Options:\n"
77
printf " -h|--help\t\t Shows this help message\n"
8+
printf " -i|--install-deps\t Install dependencies [for debian/ubuntu distros]\n"
89
printf " -u|--user DOCKER_USER\t Docker container user [default: orise]\n"
910
}
1011

@@ -16,6 +17,9 @@ while [ -n "$1" ]; do
1617
usage
1718
exit 0
1819
;;
20+
-i | --install-deps)
21+
INSTALL_DEPS=true
22+
;;
1923
-u | --user)
2024
shift
2125
DOCKER_USER=$1
@@ -55,7 +59,6 @@ WORKING_DIR=$(docker inspect -f '{{.Config.WorkingDir}}' "$CONTAINER_NAME")
5559
ROS_DISTRO=$(docker exec "$CONTAINER_NAME" /bin/bash -c "printenv ROS_DISTRO")
5660
COLCON_WORKSPACE_FOLDER=$(docker exec "$CONTAINER_NAME" /bin/bash -c "printenv COLCON_WORKSPACE_FOLDER")
5761

58-
5962
# Take container WORKING_DIR when $COLCON_WORKSPACE_FOLDER is not defined in the container
6063
COLCON_WORKSPACE_FOLDER=${COLCON_WORKSPACE_FOLDER:-$WORKING_DIR}
6164

@@ -73,26 +76,30 @@ envsubst <.devcontainer.json >"$CONTAINER_CONFIG_FOLDER/$CONTAINER_NAME.json"
7376
docker cp ros2.code-workspace "$CONTAINER_NAME:$COLCON_WORKSPACE_FOLDER/"
7477
docker cp .vscode-format/ "$CONTAINER_NAME:$COLCON_WORKSPACE_FOLDER/"
7578

76-
docker exec "$CONTAINER_NAME" apt-get install -y \
77-
python3-pip \
78-
ros-"$ROS_DISTRO"-ament-copyright \
79-
ros-"$ROS_DISTRO"-ament-cppcheck \
80-
ros-"$ROS_DISTRO"-ament-cpplint \
81-
ros-"$ROS_DISTRO"-ament-flake8 \
82-
ros-"$ROS_DISTRO"-ament-lint-cmake \
83-
ros-"$ROS_DISTRO"-ament-pep257 \
84-
ros-"$ROS_DISTRO"-ament-uncrustify \
85-
ros-"$ROS_DISTRO"-ament-xmllint
79+
if [ "$INSTALL_DEPS" ]; then
80+
docker exec "$CONTAINER_NAME" apt-get update
8681

87-
docker exec "$CONTAINER_NAME" pip3 install \
88-
cmake-format \
89-
yapf \
90-
flake8 \
91-
flake8-blind-except \
92-
flake8-builtins \
93-
flake8-class-newline \
94-
flake8-comprehensions \
95-
flake8-deprecated \
96-
flake8-docstrings \
97-
flake8-import-order \
98-
flake8-quotes
82+
docker exec "$CONTAINER_NAME" apt-get install -y \
83+
python3-pip \
84+
ros-"$ROS_DISTRO"-ament-copyright \
85+
ros-"$ROS_DISTRO"-ament-cppcheck \
86+
ros-"$ROS_DISTRO"-ament-cpplint \
87+
ros-"$ROS_DISTRO"-ament-flake8 \
88+
ros-"$ROS_DISTRO"-ament-lint-cmake \
89+
ros-"$ROS_DISTRO"-ament-pep257 \
90+
ros-"$ROS_DISTRO"-ament-uncrustify \
91+
ros-"$ROS_DISTRO"-ament-xmllint
92+
93+
docker exec "$CONTAINER_NAME" pip3 install \
94+
cmake-format \
95+
yapf \
96+
flake8 \
97+
flake8-blind-except \
98+
flake8-builtins \
99+
flake8-class-newline \
100+
flake8-comprehensions \
101+
flake8-deprecated \
102+
flake8-docstrings \
103+
flake8-import-order \
104+
flake8-quotes
105+
fi

0 commit comments

Comments
 (0)