Ресурс chef_organization
Эта страница сгенерирована из исходного кода Chef. Чтобы предложить изменение, отредактируйте файл chef_organization.rb и отправьте запрос на вытягивание в репозиторий Chef.
Используйте ресурс chef_organization для взаимодействия с объектами организаций, которые существуют на сервере Chef Infra.
Синтаксис
Синтаксис использования ресурса chef_organization в рецепте следующий:
chef_organization 'name' do
attribute 'value' # see attributes section below
...
action :action # see actions section below
end
где:
-
chef_organizationговорит клиенту Chef Infra использовать поставщикChef::Provider::ChefOrganizationво время выполнения Chef Infra Client -
name— имя блока ресурса -
attribute— ноль или более атрибутов, доступных для этого ресурса -
actionопределяет действия, которые Chef Infra Client предпримет для приведения узла в нужное состояние
Действия
Ресурс chef_organization имеет следующие действия:
:create- По умолчанию.
:delete:nothing- Этот блок ресурса не действует, пока не получит уведомление от другого ресурса о выполнении действия. После уведомления этот блок ресурса либо выполняется немедленно, либо ставится в очередь для выполнения в конце выполнения Chef Infra Client.
Свойства
Ресурс chef_organization имеет следующие свойства:
chef_serverURL сервера Chef Infra.
completeИспользуется для указания, определяет ли этот ресурс организацию полностью. Когда
true, любые свойства, не указанные этим ресурсом, будут сброшены до значений свойств по умолчанию.
full_nameПолное имя должно начинаться с символа, отличного от пробела, и иметь длину от 1 до 1023 символов. Например:
Chef Software, Inc..
ignore_failure-
Тип в Ruby: true, false | Значение по умолчанию:
falseПродолжить выполнение рецепта, если ресурс завершился ошибкой по какой-либо причине.
invitesИспользуется для указания списка пользователей, которых нужно пригласить в организацию. Приглашение отправляется любому пользователю в этом списке, который еще не является членом организации.
membersИспользуется для указания списка пользователей, которые ДОЛЖНЫ быть членами организации. Эти пользователи будут добавлены в организацию напрямую. Пользователь, который инициирует эту операцию, ДОЛЖЕН также иметь разрешение на добавление пользователей в указанную организацию.
members_specifiedИспользуется для определения, является ли пользователь членом организации. Вернет
true, если пользователь является членом.
nameИмя должно начинаться с строчной буквы или цифры, может содержать только строчные буквы, цифры, дефисы и символы подчеркивания и должно иметь длину от 1 до 255 символов. Например:
chef.
notifies-
Тип в Ruby: Символ, Chef::Resource\[String\]
Ресурс может уведомлять другой ресурс о выполнении действия при изменении его состояния. Укажите
'resource[name]',:action, которое должен выполнить ресурс, и:timerдля этого действия. Ресурс может уведомлять несколько ресурсов; для каждого уведомляемого ресурса используется операторnotifies.Если указанный ресурс не существует, возникает ошибка. В отличие от этого,
subscribesне завершится ошибкой, если исходный ресурс не найден.Таймер указывает момент во время выполнения Chef Infra Client, когда выполняется уведомление. Доступны следующие таймеры:
:beforeУказывает, что действие над уведомленным ресурсом должно выполняться до обработки блока ресурса, в котором находится уведомление.
:delayedПо умолчанию. Указывает, что уведомление должно помещаться в очередь, а затем выполняться в конце выполнения Chef Infra Client.
-
:immediate,:immediately Указывает, что уведомление должно выполняться немедленно для каждого уведомленного ресурса.
Синтаксис для
notifies:notifies :action, 'resource[name]', :timer
raw_json-
Организация в формате JSON. Например:
{ "name": "chef", "full_name": "Chef Software, Inc", "guid": "f980d1asdfda0331235s00ff36862 ... }
remove_membersИспользуется для удаления указанных пользователей из организации. Приглашения, которые не были приняты, будут отменены.
retries-
Тип в Ruby: Целое число | Значение по умолчанию:
0Количество попыток перехватить исключения и повторить ресурс.
retry_delay-
Тип в Ruby: Целое число | Значение по умолчанию:
2Задержка повторной попытки (в секундах).
subscribes-
Тип в Ruby: Символ, Chef::Resource\[String\]
Ресурс может прослушивать другой ресурс и затем выполнять действие, если состояние прослушиваемого ресурса меняется. Укажите
'resource[name]',:action, которое нужно выполнить, и:timerдля этого действия.Обратите внимание, что
subscribesне применяет указанное действие к ресурсу, который он прослушивает — например:file '/etc/nginx/ssl/example.crt' do mode '0600' owner 'root' end service 'nginx' do subscribes :reload, 'file[/etc/nginx/ssl/example.crt]', :immediately endВ этом случае свойство
subscribesперезагружает службуnginxвсякий раз, когда обновляется файл сертификата, расположенный по адресу/etc/nginx/ssl/example.crt.subscribesне вносит никаких изменений в сам файл сертификата, он просто прослушивает изменения в файле и выполняет действие:reloadдля своего ресурса (в этом примереnginx) при обнаружении изменений.Если другой ресурс не существует, подписка не вызовет ошибку. В отличие от более строгих правил
notifies, который вызывает ошибку, если другой ресурс не существует.Таймер указывает момент во время выполнения Chef Infra Client, когда выполняется уведомление. Доступны следующие таймеры:
:beforeУказывает, что действие над уведомленным ресурсом должно выполняться до обработки блока ресурса, в котором находится уведомление.
:delayedПо умолчанию. Указывает, что уведомление должно помещаться в очередь, а затем выполняться в конце выполнения Chef Infra Client.
-
:immediate,:immediately Указывает, что уведомление должно выполняться немедленно для каждого уведомленного ресурса.
Синтаксис для
subscribes:subscribes :action, 'resource[name]', :timer
Примеры
У этого ресурса нет примеров.
© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/resources/chef_organization/