Spec-Zone.ru › Chef 17

Ресурс chef_organization

Эта страница сгенерирована из исходного кода Chef Infra Client. Чтобы предложить изменение, отредактируйте файл chef_organization.rb и отправьте запрос на вытягивание в репозиторий Chef Infra Client.

Все страницы ресурсов Infra


Используйте ресурс 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 Client использовать Chef::Provider::ChefOrganization провайдер во время выполнения Chef Infra Client
  • name — имя блока ресурса
  • attribute — ноль (или более) атрибутов, доступных для этого ресурса
  • action определяет действия, которые Chef Infra Client предпримет для приведения узла в желаемое состояние

Действия


Ресурс chef_organization имеет следующие действия:

:create
По умолчанию.
:delete
:nothing
Этот блок ресурса не действует, пока другой ресурс не уведомит его о выполнении действия. После уведомления этот блок ресурса либо выполняется немедленно, либо добавляется в очередь для выполнения в конце выполнения Chef Infra Client.

Свойства


Ресурс chef_organization имеет следующие свойства:

chef_server

URL сервера 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\[Строка\]

Ресурс может уведомить другой ресурс о выполнении действия при изменении его состояния. Укажите '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

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

subscribes
Тип Ruby: Символ, Chef::Resource\[Строка\]

Ресурс может прослушивать другой ресурс и выполнять действие, если состояние прослушиваемого ресурса изменяется. Укажите 'resource[name]', действие, которое нужно выполнить, и :action для этого действия.

Обратите внимание, что 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/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API