2016-11-29 4 views
1

Я пытаюсь установить devstack (stable/newton). Я получаю следующее сообщение об ошибке:Devstack терпит неудачу с несоответствием версии oslo.policy

Traceback (most recent call last): 
2016-11-29 16:36:55.348 | File "/usr/local/lib/python2.7/dist-packages/pip/basecommand.py", line 215, in main 
2016-11-29 16:36:55.348 |  status = self.run(options, args) 
2016-11-29 16:36:55.348 | File "/usr/local/lib/python2.7/dist-packages/pip/commands/install.py", line 335, in run 
2016-11-29 16:36:55.348 |  wb.build(autobuilding=True) 
2016-11-29 16:36:55.348 | File "/usr/local/lib/python2.7/dist-packages/pip/wheel.py", line 749, in build 
2016-11-29 16:36:55.348 |  self.requirement_set.prepare_files(self.finder) 
2016-11-29 16:36:55.348 | File "/usr/local/lib/python2.7/dist-packages/pip/req/req_set.py", line 380, in prepare_files 
2016-11-29 16:36:55.348 |  ignore_dependencies=self.ignore_dependencies)) 
2016-11-29 16:36:55.348 | File "/usr/local/lib/python2.7/dist-packages/pip/req/req_set.py", line 521, in _prepare_file 
2016-11-29 16:36:55.348 |  req_to_install.check_if_exists() 
2016-11-29 16:36:55.348 | File "/usr/local/lib/python2.7/dist-packages/pip/req/req_install.py", line 1036, in check_if_exists 
2016-11-29 16:36:55.348 |  self.req.name 
2016-11-29 16:36:55.348 | File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 558, in get_distribution 
2016-11-29 16:36:55.348 |  dist = get_provider(dist) 
2016-11-29 16:36:55.348 | File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 432, in get_provider 
2016-11-29 16:36:55.348 |  return working_set.find(moduleOrReq) or require(str(moduleOrReq))[0] 
2016-11-29 16:36:55.348 | File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 968, in require 
2016-11-29 16:36:55.348 |  needed = self.resolve(parse_requirements(requirements)) 
2016-11-29 16:36:55.348 | File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/pkg_resources/__init__.py", line 859, in resolve 
2016-11-29 16:36:55.348 |  raise VersionConflict(dist, req).with_context(dependent_req) 
2016-11-29 16:36:55.348 | ContextualVersionConflict: (oslo.policy 1.14.0 (/usr/local/lib/python2.7/dist-packages), Requirement.parse('oslo.policy>=1.15.0'), set(['neutron-lib'])) 

Я попытался модернизировать oslo.policy с помощью пип, но проблема по-прежнему сохраняется. Любые указатели на то, как решить это?

+0

Вы пытались установить требуемую версию (> = 1.15.0)? Если вышеуказанное не сработало, удалите пакеты python, используя ** rm -rf /usr/local/lib/python2.7/dist-packages/*** –

ответ

1

Это вызвано глобальными изменениями требований. Некоторые проекты будут объединять требования быстрее, чем другие. Если вы еще этого не сделали, получите последний клон от мастера. Затем вы можете grep для «oslo.policy>» и посмотреть, какой файл требований проекта сбрасывает версию.

Чтобы увидеть номер версии запустить эту команду в/Opt/стек/каталог:

grep -r "oslo.policy>" 

Я вижу версию 1.14.0 приносит вам вниз так, что вы хотите сделать, это:

grep -r -l "oslo.policy>=1.14.0" | xargs -l sed -i -e "s/oslo.policy>=1.14.0/oslo.policy>=1.15.0/g" 

Это поможет вам найти и заменить. После этого вы должны проверить, действительно ли файлы были изменены, снова перезапустив первый grep. Возможно, вам придется изменить шаблон в соответствии с версией, иногда это 1.14.0, а иногда это может быть только 1.14

Наконец, обновите oslo.policy и повторите попытку.

+0

Работали как шарм. Это было не только oslo.policy, было много пакетов с несоответствием версий. Использовал вышеуказанную команду для их устранения. – Pradeep

Смежные вопросы