mediawiki

Ansible роль mediawiki

Установите и настройте mediawiki на вашей системе.

GitHub Версия Проблемы Запросы на изменения Скачивания
github Version Issues PullRequests Ansible Role

Пример Playbook

Этот пример взят из molecule/default/converge.yml и тестируется при каждом пуше, запросе на изменение и выпуске.

---
- name: Converge
  hosts: all
  become: true
  gather_facts: true

  pre_tasks:
    - name: Обновить кэш apt.
      apt: update_cache=yes cache_valid_time=600
      when: ansible_os_family == 'Debian'
      changed_when: false

    - name: Проверить, существует ли файл python3.11 EXTERNALLY-MANAGED
      ansible.builtin.stat:
        path: /usr/lib/python3.11/EXTERNALLY-MANAGED
      register: externally_managed_file_py311

    - name: Переименовать файл python3.11 EXTERNALLY-MANAGED, если он существует
      ansible.builtin.command:
        cmd: mv /usr/lib/python3.11/EXTERNALLY-MANAGED /usr/lib/python3.11/EXTERNALLY-MANAGED.old
      when: externally_managed_file_py311.stat.exists
      args:
        creates: /usr/lib/python3.11/EXTERNALLY-MANAGED.old

    - name: Проверить, существует ли файл python3.12 EXTERNALLY-MANAGED
      ansible.builtin.stat:
        path: /usr/lib/python3.12/EXTERNALLY-MANAGED
      register: externally_managed_file_py312

    - name: Переименовать файл python3.12 EXTERNALLY-MANAGED, если он существует
      ansible.builtin.command:
        cmd: mv /usr/lib/python3.12/EXTERNALLY-MANAGED /usr/lib/python3.12/EXTERNALLY-MANAGED.old
      when: externally_managed_file_py312.stat.exists
      args:
        creates: /usr/lib/python3.12/EXTERNALLY-MANAGED.old

  roles:
    - role: buluma.mediawiki
      mediawiki_destination: /opt

Машину нужно подготовить. В CI это делается с помощью molecule/default/prepare.yml:

---
- name: Prepare
  hosts: all
  gather_facts: false
  become: true

  roles:
    - role: buluma.bootstrap
    - role: buluma.core_dependencies
    - role: buluma.epel
    - role: buluma.python_pip
    - role: buluma.buildtools
    - role: buluma.openssl
      openssl_items:
        - name: apache-httpd
          common_name: "{{ ansible_fqdn }}"
    - role: buluma.httpd
    - role: buluma.php
    - role: buluma.mysql
      mysql_databases:
        - name: mediawiki
      mysql_users:
        - name: mediawiki
          password: m3d14w1k1
          priv: "mediawiki.*:ALL"

Смотрите также полное пояснение и пример о том, как использовать эти роли.

Переменные роли

Значения переменных по умолчанию заданы в defaults/main.yml:

---
# файл значений по умолчанию для mediawiki

# Версия (основная.вторичная.релиз) для установки.
mediawiki_major: 1
mediawiki_minor: 37
mediawiki_release: 1

mediawiki_version: "{{ mediawiki_major }}.{{ mediawiki_minor }}.{{ mediawiki_release }}"

# Куда установить mediawiki. Вы можете использовать этот шаблон для установки в
# стандартное место, которое отличается в зависимости от дистрибутива, см. `vars/main.yml`:
# "{{ _mediawiki_destination[ansible_distribution] | default(_mediawiki_destination['default'] ) }}"
# Измените это на простую строку, указывающую на путь, например:
# "/data/mediawiki".

mediawiki_destination: "{{ _mediawiki_destination[ansible_distribution] | default(_mediawiki_destination['default']) }}"

Требования

Состояние используемых ролей

Следующие роли используются для подготовки системы. Вы можете подготовить свою систему другим способом.

Требование GitHub Версия
buluma.bootstrap Ansible Molecule Version
buluma.buildtools Ansible Molecule Version
buluma.core_dependencies Ansible Molecule Version
buluma.epel Ansible Molecule Version
buluma.httpd Ansible Molecule Version
buluma.mysql Ansible Molecule Version
buluma.openssl Ansible Molecule Version
buluma.php Ansible Molecule Version
buluma.python_pip Ansible Molecule Version

Зависимости

Большинство ролей требуют некоторой подготовки, это делается в molecule/default/prepare.yml. Эта роль имеет "жесткую" зависимость от следующих ролей:

  • {'role': 'buluma.httpd'}

Контекст

Эта роль является частью многих совместимых ролей. Ознакомьтесь с документацией этих ролей для получения дополнительной информации.

Вот обзор связанных ролей:

dependencies

Совместимость

Эта роль была протестирована на следующих контейнерных изображениях:

контейнер теги
Debian все
Fedora все
Ubuntu jammy, bionic, noble

Минимальная необходимая версия Ansible — 2.12, тесты проводились на:

  • Предыдущей версии.
  • Текущей версии.
  • Версии разработки.

Если вы обнаружите проблемы, пожалуйста, зарегистрируйте их в GitHub.

Журнал изменений

История ролей.

Лицензия

Apache-2.0.

Информация об авторе

Shadow Walker

О проекте

Install and configure mediawiki on your system.

Установить
ansible-galaxy install buluma/ansible-role-mediawiki
Лицензия
apache-2.0
Загрузки
4508
Владелец
DevOps Engineer