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.posix
community.general
community.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