ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Here are the outputs:

  • which python: /usr/bin/python
  • python --version: Python 2.7.12

The default Python interpreter appears to be Python 2.7 on your system. The Python scripts in the ros_buildfarm package only specify python as the required interpreter (here fi), so on your system that will result in Python2 being used. This can lead to the problems that you experienced.

I believe you should either execute the script as python3 generate_prerelease_script.py .. or create a virtualenv with only Python 3 enabled and use that to run the scripts and tests.

Personally I would recommend the virtualenv approach.

Here are the outputs:

  • which python: /usr/bin/python
  • python --version: Python 2.7.12

The default Python interpreter appears to be Python 2.7 on your system. The Python scripts in the ros_buildfarm package only specify python as the required interpreter (here fi), so on your system that will result in Python2 being used. This can lead to the problems that you experienced.

I believe you should either execute the script as python3 generate_prerelease_script.py .. or create a virtualenv with only Python 3 enabled and use that to run the scripts and tests.

Personally I would recommend the virtualenv approach.

I can't access the wiki page you link to right now (host appears to be busy with other things), but at least the ros_buildfarm Setup environment to deploy configuration document suggests using a virtualenv as well.

Here are the outputs:

  • which python: /usr/bin/python
  • python --version: Python 2.7.12

The default Python interpreter appears to be Python 2.7 on your system. The Python scripts in the ros_buildfarm package only specify python as the required interpreter (here fi), so on your system that will result in Python2 being used. This can lead to the problems that you experienced.

I believe you should either execute the script as python3 generate_prerelease_script.py .. or create a virtualenv with only Python 3 enabled and use that to run the scripts and tests.

Personally I would recommend the virtualenv approach.

I can't access the wiki page you link to right now (host appears to be busy with other things), but at least the ros_buildfarm Setup environment to deploy configuration document suggests using a virtualenv as well.


Edit: the following steps work for me to create a virtualenv with all dependencies installed:

virtualenv -p python3 $HOME/venv_ros_buildfarm
source $HOME/venv_ros_buildfarm/bin/activate
pip3 install empy
pip3 install jenkinsapi
pip3 install rosdistro
pip3 install ros_buildfarm

At this point all the scripts in ros_buildfarm should be available and all use the python3 interpreter.

You'll have to activate this virtualenv whenever you want to run the prerelease test(s) as well I believe.

Here are the outputs:

  • which python: /usr/bin/python
  • python --version: Python 2.7.12

The default Python interpreter appears to be Python 2.7 on your system. The Python scripts in the ros_buildfarm package only specify python as the required interpreter (here fi), so on your system that will result in Python2 being used. This can lead to the problems that you experienced.

I believe you should either execute the script as python3 generate_prerelease_script.py .. or create a virtualenv with only Python 3 enabled and use that to run the scripts and tests.

Personally I would recommend the virtualenv approach.

I can't access the wiki page you link to right now (host appears to be busy with other things), but at least the ros_buildfarm Setup environment to deploy configuration document suggests using a virtualenv as well.


Edit: the following steps work for me to create a virtualenv with all dependencies installed:

virtualenv -p python3 $HOME/venv_ros_buildfarm
source $HOME/venv_ros_buildfarm/bin/activate
pip3 install empy
pip3 install jenkinsapi
pip3 install rosdistro
pip3 install ros_buildfarm

At this point all the scripts in ros_buildfarm should be available and all use the python3 interpreter.

You'll have to activate this virtualenv whenever you want to run the prerelease test(s) as well I believe.


Edit 2: venv setup steps were updated in ros-infrastructure/ros_buildfarm#658.