Spec-Zone.ru › Ansible 2.10

community.postgresql.postgresql_ext – Добавить или удалить расширения PostgreSQL из базы данных

Примечание

Этот плагин входит в коллекцию community.postgresql (версия 1.0.0).

Для его установки используйте: ansible-galaxy collection install community.postgresql.

Для использования в книге задач укажите: community.postgresql.postgresql_ext.

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • См. также
  • Примеры
  • Возвращаемые значения

Обзор

  • Добавление или удаление расширений PostgreSQL из базы данных.

Требования

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

  • psycopg2

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
ca_cert
строка
Указывает имя файла, содержащего сертификаты (CA) центра сертификации SSL.
Если файл существует, сертификат сервера будет проверен на подпись одним из этих центров сертификации.

Псевдонимы: ssl_rootcert
cascade
булево
    Варианты:
  • нет ←
  • да
Автоматически устанавливает/удаляет любые расширения, от которых зависит это расширение, если они еще не установлены/удалены (поддерживается начиная с PostgreSQL 9.6).
db
строка / обязательно
Имя базы данных, к которой нужно добавить или из которой удалить расширение.

Псевдонимы: login_db
login_host
строка
Хост, на котором работает база данных.
login_password
строка
Пароль для аутентификации.
login_unix_socket
строка
Путь к сокету Unix-домена для локальных подключений.
login_user
строка
По умолчанию:
"postgres"
Имя пользователя для аутентификации.
name
строка / обязательно
Имя расширения для добавления или удаления.

Псевдонимы: ext
port
целое число
По умолчанию:
5432
Порт базы данных для подключения.

Псевдонимы: login_port
schema
строка
Имя схемы, к которой нужно добавить расширение.
session_role
строка
Переключение на роль session_role после подключения.
Указанная роль session_role должна быть ролью, членом которой является текущий login_user.
Проверка разрешений для команд SQL выполняется так, как если бы роль session_role была той, которая изначально вошла в систему.
ssl_mode
строка
    Варианты:
  • allow
  • disable
  • prefer ←
  • require
  • verify-ca
  • verify-full
Определяет, будет ли или с какой приоритетностью устанавливаться безопасное SSL TCP/IP соединение с сервером.
См. https://www.postgresql.org/docs/current/static/libpq-ssl.html для получения дополнительной информации о режимах.
Значение по умолчанию prefer соответствует значению по умолчанию libpq.
state
строка
    Варианты:
  • absent
  • present ←
Состояние расширения базы данных.
trust_input
булево
добавлено в 0.2.0 community.postgresql
    Варианты:
  • нет
  • да ←
Если no, проверьте, являются ли значения параметров ext, schema, version, session_role потенциально опасными.
Использование no имеет смысл только тогда, когда возможны SQL-инъекции через параметры.
version
строка
Версия расширения для добавления или обновления. Действует только при state=present.
Если не указано, будет создана последняя версия расширения.
Невозможно понизить версию расширения. При необходимости понизить версию, удалите расширение и создайте новое с соответствующей версией.
Установите version=latest, чтобы обновить расширение до последней доступной версии.

Примечания

Примечание

  • По умолчанию предполагается, что вы входите в систему или используете sudo с учетной записью postgres на хосте.
  • Этот модуль использует psycopg2, адаптер Python для баз данных PostgreSQL.
  • Вы должны убедиться, что psycopg2 установлен на хосте перед использованием этого модуля.
  • Если удаленный хост является сервером PostgreSQL (что является случаем по умолчанию), то PostgreSQL также должен быть установлен на удаленном хосте.
  • Для систем на основе Ubuntu установите пакеты postgresql, libpq-dev, и python-psycopg2 на удалённом хосте перед использованием этого модуля.
  • Несовместимые версии, например, PostGIS unpackaged, не могут быть установлены.
  • По умолчанию предполагается, что вы входите в систему или используете sudo с учетной записью postgres на хосте.
  • Чтобы избежать ошибки «Ошибка проверки подлинности peer для пользователя postgres», используйте пользователя postgres в качестве become_user.
  • Этот модуль использует psycopg2, адаптер Python для баз данных PostgreSQL. Вы должны убедиться, что psycopg2 установлен на хосте перед использованием этого модуля.
  • Если удаленный хост является сервером PostgreSQL (что является случаем по умолчанию), то PostgreSQL также должен быть установлен на удаленном хосте.
  • Для систем на основе Ubuntu установите пакеты postgresql, libpq-dev и python-psycopg2 на удалённом хосте перед использованием этого модуля.
  • Для параметра ca_cert требуется как минимум версия Postgres 8.4 и psycopg2 версии 2.4.3.

См. также

См. также

Расширения PostgreSQL

Общая информация о расширениях PostgreSQL.

Справочник по CREATE EXTENSION

Полный справочник по документации команды CREATE EXTENSION.

Справочник по ALTER EXTENSION

Полный справочник по документации команды ALTER EXTENSION.

Справочник по DROP EXTENSION

Полный справочник по документации команды DROP EXTENSION.

Примеры

- name: Adds postgis extension to the database acme in the schema foo
  community.postgresql.postgresql_ext:
    name: postgis
    db: acme
    schema: foo

- name: Removes postgis extension to the database acme
  community.postgresql.postgresql_ext:
    name: postgis
    db: acme
    state: absent

- name: Adds earthdistance extension to the database template1 cascade
  community.postgresql.postgresql_ext:
    name: earthdistance
    db: template1
    cascade: true

# In the example below, if earthdistance extension is installed,
# it will be removed too because it depends on cube:
- name: Removes cube extension from the database acme cascade
  community.postgresql.postgresql_ext:
    name: cube
    db: acme
    cascade: yes
    state: absent

- name: Create extension foo of version 1.2 or update it if it's already created
  community.postgresql.postgresql_ext:
    db: acme
    name: foo
    version: 1.2

- name: Assuming extension foo is created, update it to the latest version
  community.postgresql.postgresql_ext:
    db: acme
    name: foo
    version: latest

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

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

Ключ Возвращаемое значение Описание
query
список / элементы=строка
всегда
Список выполненных запросов.

Пример:
['DROP EXTENSION "acme"']


Авторы

  • Daniel Schep (@dschep)
  • Thomas O’Donnell (@andytom)
  • Sandro Santilli (@strk)
  • Andrew Klychkov (@Andersson007)

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/postgresql/postgresql_ext_module.html

Spec-Zone.ru

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