Ubuntu 16.04 LTS + buildbot:如何修复依赖关系问题?

Ubuntu 16.04 LTS + buildbot:如何修复依赖关系问题?

我有Ubuntu 16.04.1 LTSbuildbot 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

我得到的输出是:

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'))

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

$ aptitude why python-sqlalchemy
i   buildbot Depends python-sqlalchemy (< 1.1)

因此看起来在打包之前没有人运行过 buildbot。

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

答案1

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

  1. virtualenv如果尚未安装,请安装:

    sudo apt install virtualenv
    
  2. 为您的项目创建一个目录并cd保存。

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

    virtualenv venv
    source venv/bin/activate
    
  4. buildbot使用以下方式安装pip(这将引入所需的依赖项,例如sqlalchemy):

    pip install buildbot
    
  5. 尝试 Buildbot 教程http://docs.buildbot.net/current/tutorial/firstrun.html以确保 Buildbot 按预期工作。

  6. 使用完虚拟环境后,请停用它:

    deactivate
    

相关内容