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

Как лучше всего установить глобальную переменную в марионетке?

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

Я бы вставил это значение в hiera (как «adminmail» или что-то еще), чтобы вы могли позже изменить его при необходимости. Параметризация там, где он используется (как сказал Шейн), также является хорошей идеей.

Это кажется вполне разумным вариантом использования глобальной переменной.

Будьте осторожны с ситуацией, когда вы хотите настроить его для определенных систем или модулей - передавая его как параметр класса (или используя Hiera, что вам следует!) Классам, которые его используют (вместо того, чтобы ссылаться на верхнюю переменную области видимости изнутри). классы) - хороший способ дать себе некоторую гибкость.