dudefellah.rt
dudefellah.rt
Zainstaluj i skonfiguruj Request Tracker na swoim systemie.
Wymagania
CentOS 7:
Pozwoliłem na opcję instalacji zależności CPAN (patrz
rt_cpan_modules w default/main.yml i/lub
__rt_cpan_modules w vars/main.yml) w celu zainstalowania ich w
niestandardowej lokalizacji (patrz rt_cpan_locallib), ale ta opcja nie dotyczy
CentOS 7. Problem polega na tym, że pakiet cpanminus z yum spowoduje zainstalowanie
niektórych starszych zależności modułów Perl, co utrudnia wykonywanie
innych zadań. Z tego powodu w tej roli unikam instalacji cpanminus na własną rękę.
Upewniłem się, że rola zakończy się niepowodzeniem, jeśli spróbujesz użyć wartości
rt_cpan_locallib w CentOS 7, aby uniknąć nieporozumień. Możesz również woleć
instalować swoje zależności CPAN globalnie.
Ponadto na CentOS 7, gnupg2 jest dostępny tylko do wersji 2.0.x, ale
moduł zależności GnuPG::Interface
wymaga wersji 2.2+. W takim przypadku będziesz musiał ręcznie zainstalować nowszą
wersję gnupg2. Przykład, jak możesz to zrobić w swoim playbooku Ansible,
jest dostępny w zadaniu Install gnupg2 2.2+ w
molecule/defaults/prepare.yml.
Jeśli używasz tylko gnupg1, powinieneś móc to zrobić,
ponieważ ma wymaganą wersję 1.4, ale musisz upewnić się, że
/usr/bin/gpg (lub cokolwiek zwróci which gpg z zainstalowanego
użytkownika) jest tym binarnym plikiem gpg1. Innymi słowy, instalator nie będzie
specjalnie szukał pliku binarnego o nazwie gpg1, i nie rozróżni
wersji, jeśli masz inne zainstalowane gnupg2 używające tej nazwy binarnej gpg.
Zmienne roli
Konfigurowalne wartości i ich opisy można przeczytać jako komentarze w defaults/main.yml. Możesz również znaleźć nieco więcej informacji o domyślnych wartościach, które są automatycznie określane dla niektórych wartości null w vars/main.yml. Wartości te są podzielone według dystrybucji i wersji w sposób, który (mam nadzieję) będzie oczywisty dla czytelnika.
Musisz również być ostrożny przy edytowaniu wartości rt_cpan_modules
podczas instalacji. Istniejące domyślne moduły (wymienione w
vars/main.yml) są tam, aby zadowolić część
instalacji make fixdeps. Oficjalna dokumentacja RT zaleca
wielokrotne uruchamianie make fixdeps, aby upewnić się, że wszystko jest zainstalowane, ale
wolałbym, aby ta rola nie uruchamiała tego polecenia wielokrotnie, jeśli mogę się
przy tym powstrzymać, stąd wartość rt_cpan_modules. Dlatego, jeśli zmienisz listę
modułów w tej tablicy, powinieneś sprawdzić, czy nie tracisz zależności,
które pomagają w gładkim (lub tak gładkim, jak udało mi się to osiągnąć) procesie
instalacji.
Mogę to ująć bardziej zwięźle: jeśli dostosujesz
rt_cpan_modules, powinieneś nadal uwzględnić to, co jest wymienione w vars/main.yml,
i dodać do tego, chyba że wiesz, co robisz.
Zależności
Z powodu ostatniej aktualizacji/próby zadowolenia ansible-lint, zmieniłem nazwy zadań na ich w pełni kwalifikowaną nazwę kolekcji (fqcn). Oznacza to, że wymagane są następujące kolekcje:
ansible.posixcommunity.generalcommunity.mysql- to jest używane tylko do kopii zapasowych podczas uaktualnień wersji
Na CentOS 7, ponieważ nie używamy cpanminus, będziesz musiał mieć zainstalowany i skonfigurowany CPAN przed użyciem tej roli.
Jak wspomniano w sekcji wymagań, systemy CentOS 7 prawdopodobnie będą potrzebować zaktualizowanej wersji gpg2, aby zadowolić RT. To będzie musiało być zainstalowane wcześniej.
Przykład Playbooka
Ogólny przebieg mogłoby wyglądać tak:
- hosts: db_servers
tasks:
- block:
- name: Zainstaluj i skonfiguruj bazę danych
ansible.builtin.include_role:
name: dudefellah.postgresql
vars:
...
become: true
- hosts: rt_servers
tasks:
- block:
- name: Zainstaluj RT
ansible.builtin.include_role:
name: dudefellah.rt
vars:
rt_version: 5.0.1
...
- name: Skonfiguruj Apache
ansible.builtin.include_role:
name: geerlingguy.apache
vars:
apache_vhosts: |
...
apache_vhosts_ssl: |
...
Licencja
GPLv2+
Informacje o autorze
Dan - github.com/dudefellah
ansible-galaxy install dudefellah.rt