setup cleanup (#29419)

* setup cleanup

* update ci

* update ci

* export variables for mac os

* check env

* what is in the profile script?

* install pyenv the same everywhere

* temporarily disable brew cache

* temporarily disable brew cache

* try fixing pyenv virtualenv-init

* try this

* inject shims path earlier

* try alternate install method

* switch back to brew install

* try         eval "$(pyenv init --path)"

* add eval "\$(pyenv init --path)"
old-commit-hash: ad32816fd6
beeps
Greg Hogan 2 years ago committed by GitHub
parent 7a291211db
commit cce2c732c6
  1. 7
      .github/workflows/selfdrive_tests.yaml
  2. 16
      tools/install_python_dependencies.sh
  3. 9
      tools/mac_setup.sh
  4. 22
      tools/openpilot_env.sh
  5. 7
      tools/ubuntu_setup.sh

@ -149,18 +149,17 @@ jobs:
PYTHONWARNINGS: default
- name: Build openpilot
run: |
source tools/openpilot_env.sh
eval "$(pyenv init --path)"
poetry run scons -j$(nproc)
- name: Run tests
run: |
source tools/openpilot_env.sh
export PYTHONPATH=$PWD
eval "$(pyenv init --path)"
poetry run tools/plotjuggler/test_plotjuggler.py
- name: Pre Cache - Cleanup scons cache
if: github.ref == 'refs/heads/master'
run: |
source tools/openpilot_env.sh
rm -rf /tmp/scons_cache/*
eval "$(pyenv init --path)"
poetry run scons -j$(nproc) --cache-populate
- name: Save scons cache
id: scons-save-cache

@ -14,21 +14,19 @@ if ! command -v "pyenv" > /dev/null 2>&1; then
echo "pyenv install ..."
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
echo -e "\n. ~/.pyenvrc" >> $RC_FILE
cat <<EOF > "${HOME}/.pyenvrc"
if [ -z "\$PYENV_ROOT" ]; then
export PATH=\$HOME/.pyenv/bin:\$HOME/.pyenv/shims:\$PATH
export PYENV_ROOT="\$HOME/.pyenv"
eval "\$(pyenv init --path)"
eval "\$(pyenv init -)"
eval "\$(pyenv virtualenv-init -)"
fi
EOF
echo -e "\nsource ~/.pyenvrc" >> $RC_FILE
# setup now without restarting shell
export PATH=$HOME/.pyenv/bin:$HOME/.pyenv/shims:$PATH
export PYENV_ROOT="$HOME/.pyenv"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
# activate pyenv now
source $RC_FILE
fi
export MAKEFLAGS="-j$(nproc)"
@ -52,6 +50,12 @@ pip install poetry==1.5.1
poetry config virtualenvs.prefer-active-python true --local
echo "PYTHONPATH=${PWD}" > $ROOT/.env
if [[ "$(uname)" == 'Darwin' ]]; then
echo "# msgq doesn't work on mac" >> $ROOT/.env
echo "export ZMQ=1" >> $ROOT/.env
echo "export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES" >> $ROOT/.env
fi
poetry self add poetry-dotenv-plugin@^0.1.0
echo "pip packages install..."

@ -46,6 +46,7 @@ brew "libtool"
brew "llvm"
brew "openssl@3.0"
brew "pyenv"
brew "pyenv-virtualenv"
brew "qt@5"
brew "zeromq"
brew "gcc@12"
@ -69,16 +70,8 @@ export CPPFLAGS="$CPPFLAGS -I${BREW_PREFIX}/opt/openssl@3/include"
export PYCURL_CURL_CONFIG=/usr/bin/curl-config
export PYCURL_SSL_LIBRARY=openssl
# openpilot environment
if [ -z "$OPENPILOT_ENV" ] && [ -n "$RC_FILE" ] && [ -z "$CI" ]; then
echo "source $ROOT/tools/openpilot_env.sh" >> $RC_FILE
source "$ROOT/tools/openpilot_env.sh"
echo "Added openpilot_env to RC file: $RC_FILE"
fi
# install python dependencies
$DIR/install_python_dependencies.sh
eval "$(pyenv init --path)"
echo "[ ] installed python dependencies t=$SECONDS"
echo

@ -1,22 +0,0 @@
if [ -z "$OPENPILOT_ENV" ]; then
export PATH="$HOME/.pyenv/bin:$PATH"
# Pyenv suggests we place the below two lines in .profile before we source
# .bashrc, but there is no simple way to guarantee we do this correctly
# programmatically across heterogeneous systems. For end-user convenience,
# we add the lines here as a workaround.
# https://github.com/pyenv/pyenv/issues/1906
export PYENV_ROOT="$HOME/.pyenv"
if [[ "$(uname)" == 'Linux' ]]; then
eval "$(pyenv virtualenv-init -)"
elif [[ "$(uname)" == 'Darwin' ]]; then
# msgq doesn't work on mac
export ZMQ=1
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
fi
eval "$(pyenv init --path)"
eval "$(pyenv init -)"
export OPENPILOT_ENV=1
fi

@ -141,13 +141,6 @@ fi
# python setup
$DIR/install_python_dependencies.sh
source ~/.bashrc
if [ -z "$OPENPILOT_ENV" ]; then
printf "\nsource %s/tools/openpilot_env.sh" "$ROOT" >> ~/.bashrc
source ~/.bashrc
echo "added openpilot_env to bashrc"
fi
echo
echo "---- OPENPILOT SETUP DONE ----"
echo "Open a new shell or configure your active shell env by running:"

Loading…
Cancel
Save