Ubuntu 16.04 LTS + buildbot:如何解决依赖问题?

fgh*_*ghj 3 python apt

我有Ubuntu 16.04.1 LTS和 buildbot 0.8.12-3。

我试过像这样启动 buildbot:

cd /var/lib/buildbot/masters/
sudo buildbot create-master test
cd test/
sudo cp master.cfg.sample master.cfg
sudo buildbot start
Run Code Online (Sandbox Code Playgroud)

作为输出,我得到了:

exceptions.AttributeError: Requirements are not satisfied for buildbot.buildslave:BuildSlave: (sqlalchemy-migrate 0.10.0 (/usr/lib/python2.7/dist-packages), Requirement.parse('sqlalchemy-migrate==0.7.2'))
Run Code Online (Sandbox Code Playgroud)

并且只有 buildbot 使用 python-sqlalchemy 和 python-migration

$ aptitude why python-sqlalchemy
i   buildbot Depends python-sqlalchemy (< 1.1)
Run Code Online (Sandbox Code Playgroud)

所以看起来甚至没有人在打包之前运行 buildbot。

解决此问题的最佳方法是什么?安装pip并使用它来安装正确版本的 sqlalchemy 或下载软件包源,修复它并重建,也许还有其他选择?

edw*_*ksl 5

我建议使用pip提供虚拟环境的包,例如virtualenv.

  1. virtualenv如果您还没有安装,请安装:

    sudo apt install virtualenv
    
    Run Code Online (Sandbox Code Playgroud)
  2. 为您的项目和cd它创建一个目录。

  3. 创建一个名为的虚拟环境venv,然后激活它:

    virtualenv venv
    source venv/bin/activate
    
    Run Code Online (Sandbox Code Playgroud)
  4. 安装buildbot使用pip(这将引入所需的依赖项,如sqlalchemy):

    pip install buildbot
    
    Run Code Online (Sandbox Code Playgroud)
  5. http://docs.buildbot.net/current/tutorial/firstrun.html尝试 Buildbot 教程,以确保 Buildbot 按预期工作。

  6. 使用完虚拟环境后,将其停用:

    deactivate
    
    Run Code Online (Sandbox Code Playgroud)