From ebcbb7e88df16ce82cee110c1f574262c4c711db Mon Sep 17 00:00:00 2001 From: Jose Luis Rivero Date: Mon, 5 Feb 2024 17:02:18 +0100 Subject: [PATCH 1/5] Allow pip to install on the system Signed-off-by: Jose Luis Rivero --- entrypoint.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/entrypoint.sh b/entrypoint.sh index ed77c11..b70652b 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -34,6 +34,10 @@ apt -y install \ python3-pip \ wget +# Allowing pip to install packages in the system +mkdir -p "${HOME}/.config/pip" +echo -e '[global]\nbreak-system-packages = true' > "${HOME}/.config/pip/pip.conf" + if [ -n "$DOXYGEN_ENABLED" ] && ${DOXYGEN_ENABLED} ; then apt -y install doxygen fi From 7abe2ece516413a638a23bbff645b517dfca4e55 Mon Sep 17 00:00:00 2001 From: Jose Luis Rivero Date: Fri, 28 Jun 2024 16:37:59 +0200 Subject: [PATCH 2/5] Use python3 virtualenvs for pip installations Signed-off-by: Jose Luis Rivero --- entrypoint.sh | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/entrypoint.sh b/entrypoint.sh index b70652b..0dc7184 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -31,13 +31,9 @@ apt -y install \ gnupg \ lcov \ lsb-release \ - python3-pip \ + python3-venv \ wget -# Allowing pip to install packages in the system -mkdir -p "${HOME}/.config/pip" -echo -e '[global]\nbreak-system-packages = true' > "${HOME}/.config/pip/pip.conf" - if [ -n "$DOXYGEN_ENABLED" ] && ${DOXYGEN_ENABLED} ; then apt -y install doxygen fi @@ -73,19 +69,25 @@ if python3 detect_ci_matching_branch.py "${GITHUB_HEAD_REF:-${GITHUB_REF#refs/he GZDEV_TRY_BRANCH=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}} fi + +python3 -m venv "$HOME/venv_gzdev" +. "$HOME/venv_gzdev/bin/activate" git clone https://github.com/osrf/gzdev /tmp/gzdev if [ -n "${GZDEV_TRY_BRANCH}" ]; then git -C /tmp/gzdev checkout ${GZDEV_TRY_BRANCH} || true fi -pip3 install -r /tmp/gzdev/requirements.txt --break-system-packages +pip3 install -r /tmp/gzdev/requirements.txt /tmp/gzdev/gzdev.py \ repository enable --project="${PACKAGE}${PACKAGE_MAJOR_VERSION}" +. "$HOME/venv_gzdev/bin/deactivate" apt-get update 2>&1 echo ::endgroup:: -echo ::group::Install tools: pip -pip3 install -U pip vcstool colcon-common-extensions --break-system-packages +echo ::group::Install build tools in venv +python3 -m venv "$HOME/venv_buildtools" +. "$HOME/venv_buildtools/bin/activate" +pip3 install -U pip vcstool colcon-common-extensions echo ::endgroup:: if [ -f "$SOURCE_DEPENDENCIES" ] || [ -f "$SOURCE_DEPENDENCIES_VERSIONED" ] ; then From b865873ef6693a80728b093ac67d828022153b00 Mon Sep 17 00:00:00 2001 From: Jose Luis Rivero Date: Fri, 28 Jun 2024 17:47:46 +0200 Subject: [PATCH 3/5] Fix deactivate. Use VENV_ROOT Signed-off-by: Jose Luis Rivero --- entrypoint.sh | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/entrypoint.sh b/entrypoint.sh index 0dc7184..11a62d2 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -13,6 +13,8 @@ TESTS_ENABLED=$7 CPPLINT_ENABLED=$8 CPPCHECK_ENABLED=$9 +VENV_ROOT=/tmp/ + # keep the previous behaviour of running codecov if old token is set [ -n "${DEPRECATED_CODECOV_TOKEN}" ] && CODECOV_ENABLED=1 @@ -70,8 +72,8 @@ if python3 detect_ci_matching_branch.py "${GITHUB_HEAD_REF:-${GITHUB_REF#refs/he fi -python3 -m venv "$HOME/venv_gzdev" -. "$HOME/venv_gzdev/bin/activate" +python3 -m venv "$VENV_ROOT/venv_gzdev" +. "$VENV_ROOT/venv_gzdev/bin/activate" git clone https://github.com/osrf/gzdev /tmp/gzdev if [ -n "${GZDEV_TRY_BRANCH}" ]; then git -C /tmp/gzdev checkout ${GZDEV_TRY_BRANCH} || true @@ -79,14 +81,14 @@ fi pip3 install -r /tmp/gzdev/requirements.txt /tmp/gzdev/gzdev.py \ repository enable --project="${PACKAGE}${PACKAGE_MAJOR_VERSION}" -. "$HOME/venv_gzdev/bin/deactivate" +deactivate apt-get update 2>&1 echo ::endgroup:: echo ::group::Install build tools in venv -python3 -m venv "$HOME/venv_buildtools" -. "$HOME/venv_buildtools/bin/activate" +python3 -m venv "$VENV_ROOT/venv_buildtools" +. "$VENV_ROOT/venv_buildtools/bin/activate" pip3 install -U pip vcstool colcon-common-extensions echo ::endgroup:: From ad7e979c79f4e54ffc32e9f61a8896acfb5f6799 Mon Sep 17 00:00:00 2001 From: Jose Luis Rivero Date: Mon, 1 Jul 2024 16:58:54 +0200 Subject: [PATCH 4/5] venv for colcon needs to access to Gazebo python modules Signed-off-by: Jose Luis Rivero --- entrypoint.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/entrypoint.sh b/entrypoint.sh index 11a62d2..9df76c8 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -87,7 +87,7 @@ apt-get update 2>&1 echo ::endgroup:: echo ::group::Install build tools in venv -python3 -m venv "$VENV_ROOT/venv_buildtools" +python3 -m venv --system-site-packages gz "$VENV_ROOT/venv_buildtools" . "$VENV_ROOT/venv_buildtools/bin/activate" pip3 install -U pip vcstool colcon-common-extensions echo ::endgroup:: From 1cf4f0cbf1c561790abdf504e711e5b1720a48c0 Mon Sep 17 00:00:00 2001 From: Jose Luis Rivero Date: Tue, 30 Jul 2024 18:12:26 +0200 Subject: [PATCH 5/5] Bad merge. Remove pip --- entrypoint.sh | 7 ------- 1 file changed, 7 deletions(-) diff --git a/entrypoint.sh b/entrypoint.sh index 9df76c8..b8484e1 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -71,7 +71,6 @@ if python3 detect_ci_matching_branch.py "${GITHUB_HEAD_REF:-${GITHUB_REF#refs/he GZDEV_TRY_BRANCH=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}} fi - python3 -m venv "$VENV_ROOT/venv_gzdev" . "$VENV_ROOT/venv_gzdev/bin/activate" git clone https://github.com/osrf/gzdev /tmp/gzdev @@ -86,12 +85,6 @@ deactivate apt-get update 2>&1 echo ::endgroup:: -echo ::group::Install build tools in venv -python3 -m venv --system-site-packages gz "$VENV_ROOT/venv_buildtools" -. "$VENV_ROOT/venv_buildtools/bin/activate" -pip3 install -U pip vcstool colcon-common-extensions -echo ::endgroup:: - if [ -f "$SOURCE_DEPENDENCIES" ] || [ -f "$SOURCE_DEPENDENCIES_VERSIONED" ] ; then echo ::group::Fetch source dependencies mkdir -p deps/src