如何解决openstack本机开发与运行环境的依赖包版本不一致?

本机开发环境是UBUNTU16.04LTS,开发环境是本机搭建的centos7虚拟机通过packstack搭建的newton版本openstack运行环境。 在开发horizon过程中,发现openstack报错的代码和本机看到的代码对不上。 通过比对,发现是openstack_auth在两边的版本不一致。

因为本机开发horizon解决依赖是通过在horizon源码目录,执行如下命令安装的

sudo pip install -r requirements.txt

所以本机安装的依赖普遍版本号比packstack环境高,加上openstack已经出了ocata版本,于是就出现两套环境的openstack_auth差异较大。

测试通过如下步骤可以将两边环境的依赖包处理成一致。

  1. 在packstack环境通过pip生成依赖信息
  2. @H_404_13@
    pip freeze -r requirements.txt
    1. 修改requirements.txt为requirements.sh 修改
    2. @H_404_13@
      alembic==0.8.7
      amqp==1.4.6
      anyjson==0.3.3
      aodh==3.0.1
      ......

      通过vscode的列编辑模式,快速修改为如下内容

      sudo pip install alembic==0.8.7
      sudo pip install amqp==1.4.6
      sudo pip install anyjson==0.3.3
      sudo pip install aodh==3.0.1
      ......
      1. 安装 执行 sudo sh requirements.sh,即可将本机与packstack依赖包版本调整为一致。
      2. @H_404_13@

相关文章

迭代器模式(Iterator)迭代器模式(Iterator)[Cursor]意图...
高性能IO模型浅析服务器端编程经常需要构造高性能的IO模型,...
策略模式(Strategy)策略模式(Strategy)[Policy]意图:定...
访问者模式(Visitor)访问者模式(Visitor)意图:表示一个...
命令模式(Command)命令模式(Command)[Action/Transactio...
生成器模式(Builder)生成器模式(Builder)意图:将一个对...