etherpad
ansible-role-etherpad
Роль для установки, настройки и обслуживания Etherpad Lite. Вы можете использовать эту роль для конфигурации Etherpad с такими решениями для хранения данных: MySQL (или MariaDB), Redis и PostgreSQL.
В настоящее время только MySQL позволяет создавать пользователя и базу данных. Для PostgreSQL эти операции должны выполняться вручную (если вы хотите или вам нужно автоматизировать эти задачи, вы можете использовать эту роль: geerlingguy.postgresql).
Этот плейбук также позволяет установить некоторые плагины для Etherpad:
- ep_delete_after_delay (Удаляет неактивный документ через некоторое время)
- ep_headerauth (Для аутентификации пользователей через HTTP-заголовок - например, полезно при использовании портала SSO, такого как LemonLDAP::NG)
Переменные роли
Плейбук требует специальной настройки. Вы должны задать etherpad_api_key
!
etherpad_db_type: dirty
Эта переменная позволяет определить, какой тип хранилища мы хотим использовать для Etherpad (по умолчанию dirty, пожалуйста, не используйте это значение в производственной среде). Эта переменная должна быть установлена в одно из следующих значений: dirty, mysql, redis или postgres.
etherpad_postgres_database_host: localhost
etherpad_postgres_database_name: etherpad
etherpad_postgres_database_user: etherpad
etherpad_postgres_database_password:
etherpad_postgres_database_port: 5432
etherpad_postgres_database_ssl_policy: "disabled"
Эти переменные позволяют настроить Etherpad с PostgreSQL. Чтобы использовать их, вы должны установить переменную etherpad_db_type
в postgres
.
etherpad_headerauth_username_header: x-authenticated-user
etherpad_headerauth_displayname_header: x-authenticated-name
Конфигурационные значения для плагина ep_headerauth (аутентификация с помощью http-заголовка). Если вы хотите использовать этот плагин, etherpad_trust_proxy
и etherpad_require_authentication
должны быть установлены в True.
Для получения дополнительной информации об доступных переменных (и их значениях по умолчанию): см. defaults/main.yml
Пример плейбука
- hosts: servers
roles:
- { role: systemli.etherpad }
Тестирование и разработка
Тесты
Для разработки и тестирования роли мы используем Github Actions, Molecule и Vagrant. В локальной среде вы можете легко протестировать роль с помощью
Запустите локальные тесты с:
```bash
molecule test
```
Требуются Molecule, Vagrant и python-vagrant
, чтобы быть установленными.
Лицензия
GPLv3
Информация об авторе
ansible-galaxy install systemli/ansible-role-etherpad