Назад | Перейти на главную страницу

Puppet and windowsfeature - логическая ошибка

Я новичок в Puppet Enterprise, но пытаюсь научиться развертывать файлы пользовательских классов на серверах Windows. Я пытаюсь использовать модуль opentable / windowsfeature, но получаю сообщение об ошибке, когда мой класс пытается работать на узле. Похоже, он выдает эту ошибку в модуле windowsfeature -

Ошибка: не удалось получить каталог с удаленного сервера: ошибка 400 на СЕРВЕРЕ: «истина» не является логическим. Похоже, это строка в /etc/puppetlabs/puppet/environments/production/modules/windowsfeature/manifests/init.pp:64 на узле test-server-02.testdomain.local Предупреждение: не используется кеш в неудачном каталоге Ошибка: Не удалось получить каталог; пропуск бега

Кто-нибудь видел эту ошибку раньше или знает, как ее исправить? Код модуля пытается инициализировать переменную как false, но я не понимаю, почему, когда он пытается выполнить validate_bool ($ restart), ошибка говорит, что для нее установлено строковое значение «true».

Вот список установленных мной модулей:
[root @ testserver01 ~] # список модулей марионеток
/ и т.д. / puppetlabs / марионетка / среды / производство / модули
├── linux_base_config (???)
├── nanliu-staging (v1.0.2)
├── функция opentable-windows (v1.0.0)
├── puppetlabs-concat (v1.1.2)
├── puppetlabs-powershell (v1.0.4)
├── puppetlabs-registry (v1.0.3)
├── puppetlabs-stdlib (v4.4.0)
├── puppetlabs-tomcat (v1.2.0)
└── windows_base_config (???)
/ etc / puppetlabs / puppet / modules (модули не установлены)
/ opt / puppet / share / puppet / modules
├── puppetlabs-pe_accounts (v2.0.2-6-gd2f698c)
├── puppetlabs-pe_concat (v1.1.2-4-g2b7bba2)
├── puppetlabs-pe_console_prune (v0.1.1-4-g293f45b)
├── puppetlabs-pe_inifile (v1.1.4-16-gcb39966)
├── puppetlabs-pe_java_ks (v1.2.4-35-g44fbb26)
├── puppetlabs-pe_postgresql (v3.4.4-15-g32e56ed)
├── puppetlabs-pe_razor (v0.2.1-9-g8d78ec2)
├── puppetlabs-pe_repo (v0.7.7-51-g5ba0427)
├── puppetlabs-pe_staging (v0.3.3-2-g3ed56f8)
├── puppetlabs-puppet_enterprise (v3.7.1-5-ga436912)
└── puppetlabs-reboot (v0.1.8)

Хотя может показаться, что проблема исходит из файла init.pp в функции Windows, это почти наверняка не так. Взгляните на файл. Строка 64 - это функция проверки, которая проверяет переменную $ restart, которая почти наверняка была передана в качестве параметра с помощью или найдена через hiera. Короткий ответ заключается в том, что ваша проблема в другом месте, скорее всего, в том месте, где вы установили значение «$ restart» на «true».

52   define windowsfeature (
53        $ensure = 'present',
54        $feature_name = $title,
55        $installmanagementtools = false,
56        $installsubfeatures = false,
57        $restart = false,
58        $source = false
59    ) {
60
61      validate_re($ensure, '^(present|absent)$', 'valid values for ensure are \'present\' or \'absent\'')
62      validate_bool($installmanagementtools)
63      validate_bool($installsubfeatures)
64      validate_bool($restart)

ошибка говорит, что для нее установлено «истинное» строковое значение.

Переменная со значением true отличается от переменной со значением "true". Один из них - строка, а другой - логическое значение.