2016-06-11 4 views
0

Я создал модуль Puppet для установки сценариев мониторинга AWS Cloudwatch и настройки их. Модуль Puppet доступен here.Почему rspec-puppet не находит мой класс?

Когда я бегу rake spec, мой тестовый пакет терпит неудачу с:

rspec ./spec/classes/init_spec.rb:4 # cloudwatch with default values for all parameters should contain Class[cloudwatch] 

Я не могу за жизнь мне понять, почему этот тест не удается. Как это исправить?

Я попытался создать в корне репо со следующим содержанием в .fixtures/yml:

fixtures: 
    symlinks: 
    cloudwatch: "../../../../manifests" 

fixtures: 
    symlinks: 
    cloudwatch: "#{source_dir}" 

Но никаких костей.

Я также попытался с помощью символьной ссылки ссылки на каталог манифестов: https://github.com/MasterRoot24/puppet-cloudwatch/commit/932970aab085984f2cda44fba841c3bde20f7a2b

ответ

1

Ваша первоначальная проблема заключается вы пропустили .fixtures.yml файл, который необходимо следующее содержание:

fixtures: 
    symlinks: 
    cloudwatch: "#{source_dir}" 

, как задокументированы в puppetlabs_spec_helper README.

Дополнительные изменения потребовались, чтобы пройти тест, как можно видеть в PR, который я только что поднял here.

Отвечая на ваш отредактированный вопрос, в котором обсуждается файл приборов, который не был в коде, который вы связали, я не думаю, что ваши светильники синтаксически действительны; Я не думаю, что вы можете указать более одного блока fixtures. Во всяком случае, взгляните на мой PR.

+0

Он также может использовать марионетку, которая делает это автоматически и вводится в крупных компаниях и используется мощными пользователями в качестве замены для puppetlabs_spec_helper. Раскрытие информации: Я автор. –

+0

Насколько я понимаю, это было удовлетворено символической ссылкой: https://github.com/MasterRoot24/puppet-cloudwatch/blob/develop/spec/fixtures/modules/cloudwatch/manifests. Я не прав? Является ли фрагмент кода готовым для копирования дословно, или мне нужно что-то изменить 'source_dir'? – JoeNyland

+0

Я только что попробовал ваше предложение, и он все еще не работает. Пожалуйста, просмотрите обновление в конце моего вопроса. – JoeNyland

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