Набор тестов очарования амулета OpenStack, не работающий

Я пытался добавить некоторую функциональность к одному из Очарования OpenStack и протестировать мои изменения. Для тестирования, чтобы удостовериться, что я не повредил никакую другую функциональность, я пытался выполнить обеспеченный набор тестов. Каждое очарование OpenStack включает тестовый каталог, который содержит шаги для того, чтобы запустить тесты. Я выполнял следующие команды на абсолютно чистой виртуальной машине человечности 14.04.3, которая не имела никаких других команд, работает на нем (обратите внимание, что код, я работаю на нем, непосредственно из репозитория и не содержит мои модификации):

sudo add-apt-repository ppa:juju/stable
sudo apt-get update
sudo apt-get -y upgrade
sudo apt-get install charm-tools
sudo apt-get install juju-core
ssh-keygen -t rsa
juju init
juju switch local
bzr branch lp:~openstack-charmers/charms/trusty/neutron-api/next
cd next
make test

После того, как последняя команда работает, я заканчиваю почти со всеми тестами, переставшими работать с ошибкой

Traceback (most recent call last):
  File "tests/014-basic-precise-icehouse", line 5, in <module>
    from basic_deployment import NeutronAPIBasicDeployment
  File "/home/ubuntu/next/tests/basic_deployment.py", line 47, in <module>
    from charmhelpers.contrib.openstack.amulet.utils import (
  File "/home/ubuntu/next/tests/charmhelpers/contrib/openstack/amulet/utils.py", line 25, in <module>
    import cinderclient.v1.client as cinder_client 

Я просто пропускаю некоторый очевидный параметр конфигурации, или набор тестов повреждается для всего очарования амулета OpenStack? До сих пор я загрузил несколько других наборов очарования (новинка - вычисляют и нейтронный API), и попробованный для запущения их тестов, и до сих пор все дали эту ошибку.

2
задан 25 August 2015 в 23:42

1 ответ

Мы действительно ценим ваш вклад и рады помочь разработчикам добиться успешного слияния кода. Модульное тестирование и охват тестом Амулета действительно помогут ускорить процесс проверки.

Я могу подтвердить, что описанная вами проблема является известной. У нас есть предложения по слиянию для решения проблем зависимости от амулета до выпуска чарма 15.10 OpenStack. В то же время, тестовые зависимости Амулета могут быть удовлетворены путем редактирования файла настройки 00, чтобы он выглядел как предложенный файл настройки 00.

Для обеспечения плавного просмотра и посадки вкладов в тестирование амулета предложенные дополнения к тесту амулета должны быть в форме новых идемпотентных test_ методов в файле tests / basic_deployment.py . Каждый метод test_ используется и должен пройти все поддерживаемые в настоящее время комбинации Ubuntu + OpenStack, независимо от test_ порядка выполнения.

Страница Ubuntu Cloud Archive содержит диаграмму, которая описывает, какие комбинации поддерживаются в любой данный момент на временной шкале выпуска.

Чтобы обеспечить плавный обзор добавленных функций ловушек, необходимо включить соответствующее покрытие модульных тестов, чтобы эти функции кода могли быть проверены.

Что касается более широкой темы о вкладе в прелести OpenStack в целом, то стоит пересмотреть Политику развития очарования OpenStack .

В частности, любые предлагаемые изменения должны быть сделаны против «следующих» (развивающихся) ветвей очарования, а не против ствола или устойчивых ветвей очарования. В случае нейтрон-API, следующая ветвь будет:

lp: ~ openstack-charmers / charms / trusty / нейтрон-api / next

Спасибо и не стесняйтесь обращаться сюда, на freenode #juju или в список рассылки Juju .

1
ответ дан 2 December 2019 в 05:02

Другие вопросы по тегам:

Похожие вопросы: