Spec-Zone.ru › Ansible 2.10

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

Примечание

Этот плагин является частью коллекции community.general (версия 1.3.2).

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

Для использования в книге задач укажите: community.general.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.general
    Варианты:
  • нет
  • да ←
Если 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 на хосте.
  • Чтобы избежать ошибки «Ошибка аутентификации клиента для пользователя 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.general.postgresql_ext:
    name: postgis
    db: acme
    schema: foo

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

- name: Adds earthdistance extension to the database template1 cascade
  community.general.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.general.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.general.postgresql_ext:
    db: acme
    name: foo
    version: 1.2

- name: Assuming extension foo is created, update it to the latest version
  community.general.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/general/postgresql_ext_module.html

Spec-Zone.ru

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