GuillaumeSmaha.gluu-customization
Ansible Gluu: Rola dostosowująca
gluu-customization to rola Ansible, która umożliwia łatwe dostosowywanie plików na serwerze Gluu poprzez kopiowanie stron XHTML, obrazków, zasobów stylów lub edytowanie plików WAR, aby zaktualizować na przykład tłumaczenia.
Historia
Serwer zarządzania dostępem API i uwierzytelnianiem Gluu jako open source umożliwia organizacjom oferowanie jednolitych logowań, silnego uwierzytelniania i centralizacji.
Wymagania
Aby przeprowadzić wdrożenie, potrzebujesz:
- Ansible na maszynie, z której wdrażasz
Instalacja
gluu-customization to rola Ansible udostępniana globalnie za pośrednictwem Ansible Galaxy. Aby zainstalować rolę gluu-customization, użyj następującego polecenia.
$ ansible-galaxy install GuillaumeSmaha.gluu-customization
Aktualizacja
Jeśli chcesz zaktualizować rolę, musisz podać parametr --force podczas instalacji. Sprawdź poniższe polecenie:
$ ansible-galaxy install --force GuillaumeSmaha.gluu-customization
Zmienne roli
vars:
# Zdefiniuj niestandardową wersję pakietu do zainstalowania.
# Aby uzyskać listę dostępnych wersji pakietu, odwiedź: https://gluu.org/docs/ce/
gluu_version: 3.1.4
# Lista plików do skopiowania do /etc/gluu/conf w kontenerze Gluu
# Można używać szablonu Jinja
# Przykład:
# gluu_copy_configuration_files:
# - 'template/configuration/auth_multi_ldap.json'
gluu_copy_configuration_files:
# Lista stron XHTML do skopiowania do katalogu /etc/gluu/jetty/{{ module }}/custom/pages
# Dostępny jest opcjonalny parametr 'dest'
# Można używać szablonu Jinja; dlatego możliwe jest użycie ścieżki względnej z katalogu 'templates'
# Przykład:
# gluu_copy_pages:
# oxauth:
# - path: 'template/pages/login.xhtml'
# - path: 'template/pages/login_template.xhtml'
# dest: 'WEB-INF/incl/layout/login-template.xhtml'
gluu_copy_pages:
# Lista zasobów do skopiowania do katalogu /etc/gluu/jetty/{{ module }}/custom/static
# Nie można używać szablonu Jinja. Musisz określić absolutną ścieżkę.
# Przykład:
# gluu_copy_resources:
# oxauth:
# - path: '{{ playbook_dir }}/templates/custom/oxauth/static/logo.svg'
# dest: 'img/logo.svg'
# - path: '{{ playbook_dir }}/templates/custom/oxauth/static/error.png'
# dest: 'img/error.png'
gluu_copy_resources:
# Lista plików do skopiowania do pliku WAR.
# Plik WAR zostanie rozpakowany, pliki zostaną skopiowane, a archiwum zostanie ponownie utworzone.
# Można używać szablonu Jinja; dlatego możliwe jest użycie ścieżki względnej z katalogu 'templates'
# Przykład dostosowania dostępnych języków i tłumaczeń:
# gluu_customize_wars:
# oxauth:
# - path: 'wars/oxauth/messages_fr.properties'
# dest: 'WEB-INF/classes/messages_fr.properties'
# - path: 'wars/oxauth/messages_en.properties'
# dest: 'WEB-INF/classes/messages_en.properties'
# - path: 'wars/oxauth/faces-config.xml'
# dest: 'WEB-INF/faces-config.xml'
gluu_customize_wars:
Wdrażanie
Aby przeprowadzić wdrożenie, musisz wykonać kilka kroków:
- Utwórz nowy plik
hosts
. Sprawdź dokumentację inwentarza ansible, jeśli potrzebujesz pomocy. - Utwórz nowy playbook do wdrożenia swojej aplikacji, na przykład
deploy.yml
. - Skonfiguruj zmienne roli (zobacz Zmienne roli).
- Dodaj rolę
GuillaumeSmaha.gluu-customization
jako część play. - Uruchom playbook wdrożeniowy.
ansible-playbook -i hosts deploy.yml
Jeśli wszystko zostało poprawnie skonfigurowane, to polecenie zainstaluje Gluu Cluster Manager na hoście.
Przykładowy playbook
W folderze "example" możesz sprawdzić przykładowy projekt, który pokazuje, jak przeprowadzić wdrożenie.
Aby to uruchomić, musisz mieć zainstalowany Vagrant i rolę. Sprawdź https://www.vagrantup.com, aby uzyskać więcej informacji o Vagrancie i naszej sekcji Instalacji.
$ cd example
$ vagrant plugin install vagrant-lxc
$ vagrant plugin install vagrant-hostmanager
$ vagrant up --provider=lxc
$ ansible-galaxy install GuillaumeSmaha.gluu-setup GuillaumeSmaha.gluu-customization
$ ansible-playbook -i env/ubuntu deploy.yml
$ ansible-playbook -i env/centos deploy.yml
Aby uzyskać dostęp do Gluu, przejdź do:
https://gluu-customization-ubuntu/
lub
https://gluu-customization-centos/
Przykładowe projekty
Pełny przykład playbooka możesz znaleźć tutaj:
ansible-galaxy install GuillaumeSmaha.gluu-customization