Spec-Zone.ru › Ansible 2.5

pubnub_blocks — Модуль управления блоками PubNub.

Новый в версии 2.2.

  • Обзор
    • Требования
  • Параметры
  • Примеры
  • Возвращаемые значения
  • Статус
    • Автор

Обзор

  • Этот модуль позволяет Ansible взаимодействовать с инфраструктурой PubNub BLOCKS, предоставляя следующие операции: создание/удаление, запуск/останов и переименование блоков, а также создание/изменение/удаление обработчиков событий.

Требования

Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.

  • python >= 2.7
  • pubnub_blocks_client >= 1.0

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
account
(добавлено в 2.4)
Имя учетной записи PubNub, для которой application будет использоваться для управления блоками.
Если значение не задано или пустое, будет использована учетная запись пользователя.
application
обязательно
Имя целевого приложения PubNub, для которого будет выполнена настройка блоков на конкретном keyset.
cache По умолчанию:
{}
В случае использования модуля управления блоками несколько раз в одном выполнении, рекомендуется включить кэширование, передавая собранные данные из предыдущего модуля в этот параметр.
changes По умолчанию:
{}
Список полей, которые должны быть изменены самим блоком (не затрагивает обработчики событий).
Возможные варианты изменения: name.
description По умолчанию:
Новый блок
Краткое описание блока, которое будет отображаться на admin.pubnub.com. Используется только в случае, если блок не существует, и не будет изменен для существующего блока.
email
Электронная почта из учетной записи, для которой необходимо запустить новую сессию.
Не требуется, если cache содержит результат вызова предыдущего модуля (в том же выполнении).
event_handlers По умолчанию:
[]
Список обработчиков событий, которые должны быть обновлены для указанного блока name.
Каждая запись для нового обработчика должна содержать: name, src, channels, event. name используется в качестве имени обработчика события, которое может быть использовано позже для внесения изменений.
src — полный путь к файлу с кодом обработчика события.
channels — имя канала, из которого обработчик ожидает событий.
event — тип события, способного запустить обработчик события: js-before-publish, js-after-publish, js-after-presence.
Каждая запись для существующих обработчиков должна содержать name (чтобы целевой обработчик можно было идентифицировать). Остальные параметры (src, channels и event) могут быть добавлены, если требуется изменение.
Можно переименовать обработчик события, добавив changes в нагрузку обработчика и передав словарь, который будет содержать единственный ключ name, где должно быть передано новое имя.
Для удаления конкретного обработчика можно установить state для него в absent, и он будет удален.
keyset
обязательно
Имя набора ключей приложения, привязанного к управляемым блокам.
name
обязательно
Имя управляемого блока, которое будет отображаться на admin.pubnub.com.
password
Пароль, соответствующий учетной записи, к которой относится указанный email.
Не требуется, если cache содержит результат вызова предыдущего модуля (в том же выполнении).
state
    Варианты:
  • запущен ←
  • остановлен
  • присутствует
  • отсутствует
Желаемое состояние блока после завершения процесса создания/обновления обработчиков событий.
validate_certs По умолчанию:
да
Этот ключ позволяет пропустить проверку сертификатов при выполнении вызовов REST API. Иногда у хоста могут возникнуть проблемы с сертификатами, что вызовет проблемы при вызове REST API PubNub.
Если проверку следует игнорировать, необходимо передать False в этот параметр.

Примеры

# Event handler create example.
- name: Create single event handler
  pubnub_blocks:
    email: '{{ email }}'
    password: '{{ password }}'
    application: '{{ app_name }}'
    keyset: '{{ keyset_name }}'
    name: '{{ block_name }}'
    event_handlers:
      -
        src: '{{ path_to_handler_source }}'
        name: '{{ handler_name }}'
        event: 'js-before-publish'
        channels: '{{ handler_channel }}'

# Change event handler trigger event type.
- name: Change event handler 'event'
  pubnub_blocks:
    email: '{{ email }}'
    password: '{{ password }}'
    application: '{{ app_name }}'
    keyset: '{{ keyset_name }}'
    name: '{{ block_name }}'
    event_handlers:
      -
        name: '{{ handler_name }}'
        event: 'js-after-publish'

# Stop block and event handlers.
- name: Stopping block
  pubnub_blocks:
    email: '{{ email }}'
    password: '{{ password }}'
    application: '{{ app_name }}'
    keyset: '{{ keyset_name }}'
    name: '{{ block_name }}'
    state: stop

# Multiple module calls with cached result passing
- name: Create '{{ block_name }}' block
  register: module_cache
  pubnub_blocks:
    email: '{{ email }}'
    password: '{{ password }}'
    application: '{{ app_name }}'
    keyset: '{{ keyset_name }}'
    name: '{{ block_name }}'
    state: present
- name: Add '{{ event_handler_1_name }}' handler to '{{ block_name }}'
  register: module_cache
  pubnub_blocks:
    cache: '{{ module_cache }}'
    application: '{{ app_name }}'
    keyset: '{{ keyset_name }}'
    name: '{{ block_name }}'
    state: present
    event_handlers:
      -
        src: '{{ path_to_handler_1_source }}'
        name: '{{ event_handler_1_name }}'
        channels: '{{ event_handler_1_channel }}'
        event: 'js-before-publish'
- name: Add '{{ event_handler_2_name }}' handler to '{{ block_name }}'
  register: module_cache
  pubnub_blocks:
    cache: '{{ module_cache }}'
    application: '{{ app_name }}'
    keyset: '{{ keyset_name }}'
    name: '{{ block_name }}'
    state: present
    event_handlers:
      -
        src: '{{ path_to_handler_2_source }}'
        name: '{{ event_handler_2_name }}'
        channels: '{{ event_handler_2_channel }}'
        event: 'js-before-publish'
- name: Start '{{ block_name }}' block
  register: module_cache
  pubnub_blocks:
    cache: '{{ module_cache }}'
    application: '{{ app_name }}'
    keyset: '{{ keyset_name }}'
    name: '{{ block_name }}'
    state: started

Возвращаемые значения

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

Ключ Возвращаемое значение Описание
module_cache
словарь
всегда
Кэшированная информация об учетной записи. В случае многократного использования модуля в одном выполнении, рекомендуется передавать кэшированные данные в последующие вызовы модуля, чтобы ускорить процесс.



Статус

Этот модуль помечен как превью, что означает, что его интерфейс не гарантируется обратной совместимостью.

Автор

  • PubNub <support@pubnub.com> (@pubnub)
  • Sergey Mamontov <sergey@pubnub.com> (@parfeon)

Подсказка

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

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/pubnub_blocks_module.html

Spec-Zone.ru

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