buluma.mediawiki

Rola Ansible mediawiki

Zainstaluj i skonfiguruj mediawiki na swoim systemie.

GitHub Wersja Problemy Prośby o złączenie Pobrania
github Wersja Problemy Prośby Rola Ansible

Przykładowy playbook

Ten przykład pochodzi z molecule/default/converge.yml i jest testowany przy każdym przesyłaniu, prośbie o złączenie i wydaniu.

---
- name: Zbieżność
  hosts: all
  become: true
  gather_facts: true

  pre_tasks:
    - name: Zaktualizuj pamięć podręczną apt.
      apt: update_cache=yes cache_valid_time=600
      when: ansible_os_family == 'Debian'
      changed_when: false

    - name: Sprawdź, czy plik python3.11 EXTERNALLY-MANAGED istnieje
      ansible.builtin.stat:
        path: /usr/lib/python3.11/EXTERNALLY-MANAGED
      register: externally_managed_file_py311

    - name: Zmień nazwę pliku python3.11 EXTERNALLY-MANAGED, jeśli istnieje
      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: Sprawdź, czy plik python3.12 EXTERNALLY-MANAGED istnieje
      ansible.builtin.stat:
        path: /usr/lib/python3.12/EXTERNALLY-MANAGED
      register: externally_managed_file_py312

    - name: Zmień nazwę pliku python3.12 EXTERNALLY-MANAGED, jeśli istnieje
      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

Maszyna musi być przygotowana. W CI jest to zrobione za pomocą molecule/default/prepare.yml:

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

Sprawdź także pełne wyjaśnienie i przykład dotyczące używania tych ról.

Zmienne roli

Domyślne wartości dla zmiennych są ustawione w defaults/main.yml:

---
# domyślny plik dla mediawiki

# Wersja (główna.minor.wydanie), którą zainstalować.
mediawiki_major: 1
mediawiki_minor: 37
mediawiki_release: 1

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

# Gdzie zainstalować mediawiki. Możesz użyć tego wzoru, aby zainstalować ją w
# domyślnej lokalizacji, która różni się w zależności od dystrybucji, zobacz `vars/main.yml`:
# "{{ _mediawiki_destination[ansible_distribution] | default(_mediawiki_destination['default'] ) }}"
# Zmień to na prosty ciąg odnoszący się do ścieżki, na przykład:
# "/data/mediawiki".

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

Wymagania

Stan używanych ról

Poniższe role są używane do przygotowania systemu. Możesz przygotować system w inny sposób.

Wymaganie GitHub Wersja
buluma.bootstrap Ansible Molecule Wersja
buluma.buildtools Ansible Molecule Wersja
buluma.core_dependencies Ansible Molecule Wersja
buluma.epel Ansible Molecule Wersja
buluma.httpd Ansible Molecule Wersja
buluma.mysql Ansible Molecule Wersja
buluma.openssl Ansible Molecule Wersja
buluma.php Ansible Molecule Wersja
buluma.python_pip Ansible Molecule Wersja

Zależności

Większość ról wymaga jakiegoś rodzaju przygotowania, to jest zrobione w molecule/default/prepare.yml. Ta rola ma "twardą" zależność od następujących ról:

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

Kontekst

Ta rola jest częścią wielu kompatybilnych ról. Zobacz dokumentację tych ról w celu uzyskania dalszych informacji.

Oto przegląd powiązanych ról:

zależności

Kompatybilność

Ta rola była testowana na tych obrazach kontenerowych:

kontener tagi
Debian wszystkie
Fedora wszystkie
Ubuntu jammy, bionic, noble

Minimalna wersja Ansible wymagana to 2.12, testy były przeprowadzane dla:

  • Poprzedniej wersji.
  • Bieżącej wersji.
  • Wersji rozwojowej.

Jeśli znajdziesz problemy, zgłoś je na GitHub

Dziennik zmian

Historia roli

Licencja

Apache-2.0

Informacje o autorze

Shadow Walker

O projekcie

Install and configure mediawiki on your system.

Zainstaluj
ansible-galaxy install buluma.mediawiki
Licencja
apache-2.0
Pobrania
4.5k
Właściciel
DevOps Engineer