wcm_io_devops.conga_maven

wcm_io_devops.conga_maven

Ta rola generuje konfigurację dla środowiska CONGA za pomocą Maven. Rola może używać definicji konfiguracji (np. w tym samym repozytorium co konfiguracja Ansible) lub zdalnego repozytorium Git, które rola sklonuje i zaktualizuje w razie potrzeby.

Ta rola została opracowana w ramach wcm.io DevOps Ansible Automation for AEM aby zintegrować Ansible z CONGA.

Wymagania

Ta rola wymaga zainstalowanego Mavena, a opcjonalnie Gita, jeśli chcesz, aby rola korzystała z repozytorium Git do konfiguracji. Zarówno Maven, jak i Git muszą być odpowiednio skonfigurowane, aby mieć dostęp do repozytoriów i artefaktów używanych w konfiguracji CONGA. Aktualnie rola musi być uruchamiana na hoście Ansible (tj. localhost), ponieważ wcm_io_devops.conga_facts jest zaimplementowane jako wtyczka akcji, która zawsze jest wykonywana lokalnie. Dlatego aby wtyczka mogła odczytać konfigurację wygenerowaną przez tę rolę, rola musi również działać lokalnie.

Zmienne roli

Dostępne zmienne są wymienione poniżej z ich domyślnymi wartościami (zobacz defaults/main.yml):

# Nazwa środowiska CONGA, dla którego generowana jest konfiguracja
conga_environment

Domyślnie rola używa zmiennej conga_environment, aby skompilować konfigurację tylko dla środowiska określonego tą zmienną. Ogólnym celem jest korzystanie z tej zmiennej w całej konfiguracji Ansible-CONGA, aby celować w pojedyncze środowisko.

# Katalog bazowy konfiguracji CONGA
conga_basedir

Gdy nie używasz repozytorium Git, zmienna conga_basedir musi wskazywać na katalog bazowy definicji konfiguracji CONGA (gdzie znajduje się pom.xml). W przeciwnym razie jest automatycznie budowane z zmiennych conga_maven_git_root i conga_maven_root.

# URI repozytorium Git dla konfiguracji
conga_maven_git_repo: "https://github.com/wcm-io-devops/conga.git"
# Katalog do sklonowania konfiguracji
conga_maven_git_root: /tmp/git
# Gałąź do zcheckoutowania
conga_maven_git_branch: develop

Jeśli chcesz używać repozytorium Git dla konfiguracji, musisz przynajmniej ustawić zmienną conga_maven_git_repo. Jeśli nie jest ustawiona, część Gita roli zostanie pominięta i musisz ręcznie ustawić zmienną conga_basedir.

# Katalog główny konfiguracji CONGA
conga_maven_root: configuration
# Komenda Maven do wykonania
conga_maven_cmd: mvn
# Opcje Maven (uruchom w trybie wsadowym, zaktualizuj snapshoty i tylko skompiluj pojedyncze środowisko)
conga_maven_opts: "-B -U -Dconga.environments={{ conga_environment }}"
# Ścieżka do niestandardowego pliku ustawień używanego podczas uruchamiania Mavena
conga_maven_settings: ~/.m2/settings.xml
# Ścieżka do pliku hasła Vault, domyślnie zgodna z konfiguracją Ansible
conga_maven_vault_password_file: "{{ lookup('config', 'DEFAULT_VAULT_PASSWORD_FILE') }}"

Te zmienne pozwalają dostosować sposób wykonywania Mavena, np. podając pełną ścieżkę do wykonywalnego pliku Mavena lub niestandardowy plik ustawień.

Zależności

Ta rola nie zależy bezpośrednio od innych ról, ale jest przeznaczona do użycia w połączeniu z rolą/wtyczką wcm_io_devops.conga_facts, która analizuje model konfiguracji CONGA i udostępnia go jako zmienne Ansible. Aby to działało, zmienna conga_basedir musi wskazywać na główny katalog konfiguracji CONGA.

Przykładowy Playbook

  1. Generuj przykładową konfigurację CONGA dla środowiska prod:

     - hosts: localhost
       vars:
         conga_environment: prod
       roles:
         - { role: wcm_io_devops.conga_maven,
             conga_maven_git_repo: "https://github.com/wcm-io-devops/conga.git",
             conga_maven_git_branch: master,
             conga_maven_root: example }
    
  2. Generuj konfigurację CONGA dla środowiska dev z lokalnego katalogu config-definition:

     - hosts: localhost
       vars:
         conga_environment: dev
       roles:
         - { role: wcm_io_devops.conga_maven,
             conga_basedir: config-definition }
    
O projekcie

Generates CONGA configuration

Zainstaluj
ansible-galaxy install wcm_io_devops.conga_maven
Licencja
apache-2.0
Pobrania
49.6k
Właściciel
Tools for Configuration Management and Deployment