buluma.mediawiki

Rol de Ansible mediawiki

Instala y configura MediaWiki en tu sistema.

GitHub Versión Problemas Solicitudes de Extracción Descargas
github Versión Problemas Solicitudes de extracción Rol de Ansible

Ejemplo de Playbook

Este ejemplo se toma de molecule/default/converge.yml y se prueba en cada push, pull request y lanzamiento.

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

  pre_tasks:
    - name: Actualizar caché de apt.
      apt: update_cache=yes cache_valid_time=600
      when: ansible_os_family == 'Debian'
      changed_when: false

    - name: Comprobar si existe el archivo EXTERNALLY-MANAGED de python3.11
      ansible.builtin.stat:
        path: /usr/lib/python3.11/EXTERNALLY-MANAGED
      register: externally_managed_file_py311

    - name: Renombrar archivo EXTERNALLY-MANAGED de python3.11 si existe
      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: Comprobar si existe el archivo EXTERNALLY-MANAGED de python3.12
      ansible.builtin.stat:
        path: /usr/lib/python3.12/EXTERNALLY-MANAGED
      register: externally_managed_file_py312

    - name: Renombrar archivo EXTERNALLY-MANAGED de python3.12 si existe
      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

La máquina debe estar preparada. En CI esto se hace utilizando molecule/default/prepare.yml:

---
- name: Preparar
  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"

También puedes ver una explicación completa y ejemplo sobre cómo usar estos roles.

Variables del Rol

Los valores predeterminados para las variables se establecen en defaults/main.yml:

---
# archivo de valores predeterminados para mediawiki

# La versión (mayor.menor.lanzamiento) a instalar.
mediawiki_major: 1
mediawiki_minor: 37
mediawiki_release: 1

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

# Donde instalar mediawiki. Puedes usar este patrón para instalar en una ubicación
# predeterminada que difiera por distribución, consulta `vars/main.yml`:
# "{{ _mediawiki_destination[ansible_distribution] | default(_mediawiki_destination['default'] ) }}"
# Cambia esto a una cadena simple que se refiera a una ruta, por ejemplo:
# "/data/mediawiki".

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

Requisitos

Estado de los roles usados

Los siguientes roles se usan para preparar un sistema. Puedes preparar tu sistema de otra manera.

Requisito GitHub Versión
buluma.bootstrap Ansible Molecule Versión
buluma.buildtools Ansible Molecule Versión
buluma.core_dependencies Ansible Molecule Versión
buluma.epel Ansible Molecule Versión
buluma.httpd Ansible Molecule Versión
buluma.mysql Ansible Molecule Versión
buluma.openssl Ansible Molecule Versión
buluma.php Ansible Molecule Versión
buluma.python_pip Ansible Molecule Versión

Dependencias

La mayoría de los roles requieren algún tipo de preparación, esto se realiza en molecule/default/prepare.yml. Este rol tiene una dependencia "fuerte" en los siguientes roles:

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

Contexto

Este rol es parte de muchos roles compatibles. Echa un vistazo a la documentación de estos roles para más información.

Aquí hay un resumen de los roles relacionados:

dependencias

Compatibilidad

Este rol se ha probado en estas imágenes de contenedor:

contenedor tags
Debian todos
Fedora todos
Ubuntu jammy, bionic, noble

La versión mínima de Ansible requerida es 2.12, se han realizado pruebas en:

  • La versión anterior.
  • La versión actual.
  • La versión de desarrollo.

Si encuentras problemas, por favor regístralos en GitHub

Registro de Cambios

Historial del Rol

Licencia

Apache-2.0

Información del Autor

Shadow Walker

Acerca del proyecto

Install and configure mediawiki on your system.

Instalar
ansible-galaxy install buluma.mediawiki
Licencia
apache-2.0
Descargas
4.5k
Propietario
DevOps Engineer