Spec-Zone.ru › Ansible

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

Примечание

Этот модуль является частью коллекции community.general (версия 9.5.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить, установлена ли она, запустите ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.general. Для использования этого модуля требуются дополнительные компоненты, см. Требования для получения подробной информации.

Для использования в playbook, укажите: community.general.pubnub_blocks.

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

Краткое описание

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

Требования

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

  • pubnub_blocks_client >= 1.0

Параметры

Параметр

Комментарии

account

string

Имя учетной записи PubNub, из которой application будет использоваться для управления блоками.

Учетная запись пользователя будет использоваться, если значение не установлено или пусто.

По умолчанию: ""

application

string / required

Имя целевого приложения PubNub, для которого будет выполнена конфигурация блоков на конкретном keyset.

cache

dictionary

В случае, если одна пьеса использует модуль управления блоками несколько раз, рекомендуется включить «кэширование», заставив предыдущий модуль совместно использовать собранные артефакты и передать их этому параметру.

По умолчанию: {}

changes

dictionary

Список полей, которые должны быть изменены самим блоком (не влияет на обработчики событий).

Возможные варианты изменения: name.

По умолчанию: {}

description

string

Краткое описание блока, которое будет отображаться на admin.pubnub.com. Используется только если блок не существует и не будет изменять описание для существующего блока.

email

string

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

Не требуется, если cache содержит результат вызова предыдущего модуля (в той же пьесе).

По умолчанию: ""

event_handlers

list / elements=dictionary

Список обработчиков событий, которые должны быть обновлены для указанного блока 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

string / required

Имя набора ключей приложения, которое привязано к управляемым блокам.

name

string / required

Имя управляемого блока, которое будет отображаться на admin.pubnub.com.

password

string

Пароль, соответствующий учетной записи, которой принадлежит указанный email.

Не требуется, если cache содержит результат вызова предыдущего модуля (в той же пьесе).

По умолчанию: ""

state

string

Предполагаемое состояние блока после завершения процесса создания/обновления обработчиков событий.

Варианты:

  • "started"
  • "stopped"
  • "present" ← (по умолчанию)
  • "absent"

validate_certs

boolean

Этот ключ позволяет попытаться пропустить проверку сертификатов при выполнении вызовов REST API. Иногда хост может иметь проблемы с сертификатами, и это вызовет проблемы при вызове REST API PubNub.

Если проверку следует игнорировать, false следует передать этому параметру.

Варианты:

  • false
  • true ← (по умолчанию)

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

Может работать в check_mode и возвращать прогноз состояния изменений без модификации целевого объекта.

diff_mode

Поддержка: отсутствует

Возвращает подробную информацию о внесенных изменениях (или, возможно, необходимых изменениях в check_mode) при включенном режиме diff.

Примеры

# Event handler create example.
- name: Create single event handler
  community.general.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'
  community.general.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
  community.general.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
  community.general.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
  community.general.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
  community.general.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
  community.general.pubnub_blocks:
    cache: '{{ module_cache }}'
    application: '{{ app_name }}'
    keyset: '{{ keyset_name }}'
    name: '{{ block_name }}'
    state: started

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

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

Ключ

Описание

module_cache

словарь

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

Возвращается: всегда

Авторы

  • PubNub (@pubnub)
  • Сергей Мамонтов (@parfeon)

Ссылки на коллекцию

  • Система отслеживания задач
  • Репозиторий (исходный код)
  • Задать вопрос о помощи
  • Отправить отчет об ошибке
  • Запросить новую функцию
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/general/pubnub_blocks_module.html

Spec-Zone.ru

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