2016-07-01 2 views
0

Я использую кукольный модуль из кукольного Forge - https://forge.puppet.com/creativeview/mssql_system_dsnИспользуйте марионеткой модуль несколько раз

документация указывает, чтобы использовать его как это:

class {'mssql_system_dsn': 
    dsn_name  => 'vcenter', 
    db_name  => 'vcdb', 
    db_server_ip => '192.168.35.20', 
    sql_version => '2012', 
    dsn_64bit => true, 
} 

Мне нужно создать несколько источников данных ODBC.

Однако, если я просто дублирую этот фрагмент дважды и изменяю параметры, я получаю ошибку объявления с несколькими объявлениями.

Как я могу объявить этот модуль несколько раз?

ответ

0

Как я могу объявить этот модуль несколько раз?

Вы не можете сделать это без изменения модуля. Хотя можно объявить один и тот же класс несколько раз, если вы используете синтаксис типа include, который не позволяет использовать разные параметры с разными объявлениями. Все это связано с тем, что классы кукол - это синглтоны. Я могу подтвердить на основе быстрого обзора the module's code, что его дизайн не поддерживает определение нескольких источников данных.

Я бы рекомендовал вам подать запрос об улучшении с автором модуля. Если это не приносит плоды, у вас есть возможность самостоятельно модифицировать модуль. Похоже, это было бы возможно, но не так просто, как просто изменить ключевое слово class на define.

+0

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

+0

@MattSchuchard. Поскольку ОП описывает безуспешные попытки достичь своей цели, скопировав данное объявление и изменив его параметры, разумно сделать вывод, что он хочет объявить несколько источников данных на одном узле. –

+0

Да. Вы правы, что, когда я сказал, что хотел создать несколько источников данных, он был на одной машине. Есть ли у кого-нибудь мнение о том, что было бы лучшим способом модифицировать модуль для поддержки этой способности? Разве это не странный дизайн для этого типа ресурсов? - Я не могу придумать, почему автор разработал модуль таким образом, чтобы ограничивать источники данных по одному на узел. – djnz

0

Поскольку автор не ответил на мою просьбу и не объединил запрос на тягу от другого автора, я создал свой собственный модуль;

https://forge.puppet.com/garfieldmoore/odbc_data_source

Если кому-то интересно достаточно, чтобы просмотреть код моего модуля и предложить улучшения или дайте мне знать, когда я не следил за лучшие практики я был бы признателен за это

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