2016-11-17 19 views
0

Я просто хочу посмотреть, можно ли запускать тесты на кухне с сервером, который всегда включен.Можно ли проводить тесты кухни на сервере без использования каких-либо драйверов?

Я знаю, что тестирование кулинарных книг против виртуальных машин, которые вы можете создавать и уничтожать по желанию, было бы идеальным, но я ожидаю, что там будет какой-то урезанный способ сближения и запуска тестов против коробки, используя только WinRM или SSH.

ответ

2

Предполагаю, что вы хотите запускать тесты с использованием Serverspec или InSpec. Это зависит от верификатора, driver и provisioner разделы .kitchen.yml не являются обязательными. Если вы пропустите их, то test-kitchen будет использовать драйвер dummy. Так что без водителя kitchen list будет выглядеть следующим образом:

$ kitchen list 
Instance       Driver Provisioner Verifier Transport Last Action 
... 
ci-server-ubuntu-1604    Dummy ChefSolo  Serverspec Ssh  <Not Created> 

И если верификатор поддерживает SSH или WinRM вы можете запустить kitchen verify. Serverspec verifier can сделайте это, Inspec verifier can do it as well.

Однако я не уверен, если вам нужна вся тестовая кухня, если вы хотите просто запустить тесты на машине. Оба InSpec и Serverspec могут работать автономно.

1

Вы упомянули, «без использования каких-либо драйверов?» По the Kitchen documentation:

Этот файл используется Vagrant как водитель, который не требует дополнительной настройки, потому что это драйвер по умолчанию используется кухня

Там, кажется, не быть способ, чтобы избежать с помощью Водитель. Однако, пока вы не запускаете какие-либо команды создания или уничтожения, вы, вероятно, сможете постоянно перестраивать и тестировать.

Я думаю, что это важно, чтобы держать две вещи в виду, если вы продолжите:

  1. Вы используете инструменты against the way they're intended, так и будущие изменения имеют больше шансов сломать рабочий процесс, чем рабочий процесс типичного пользователя.

  2. Вы по-настоящему не проверяете, как шеф-повар будет вести себя в новой сборке; вы только проверяете, можете ли вы получить от неизвестного текущего состояния до требуемого состояния. Возможно, вы не сможете построить сервер с нуля, если вы не будете тестировать его так часто.

Если вы хотите только сходиться и запускать тесты, считая запуск существующих инструментов тестирования автономным способом.

+0

Это отличный ответ, а также Шимон. Хотя я могу отметить только один. Но спасибо вам большое. Это было полезно. – arjabbar

2

Вы, вероятно, хотите proxy driver:

driver: 
    name: proxy 
    host: testserver.example.com 

Имейте в виду, вы не получите изоляции между испытаниями, что является очень плохо.

+0

Спасибо за ссылку. Я не видел, чтобы этот драйвер был зарегистрирован где угодно. – arjabbar

+0

Это довольно ниша, поскольку, как уже упоминалось, это плохая вещь для использования. – coderanger