buluma.maven
Rola Ansible maven
Zainstaluj i skonfiguruj Apache Maven na swoich systemach.
GitHub | Wersja | Zgłoszenia | Prośby o włączenie | Pobrania |
---|---|---|---|---|
Przykładowy Playbook
Ten przykład pochodzi z molecule/default/converge.yml
i jest testowany przy każdym push, prośbie o włączenie i wydaniu.
# kod: język=ansible
---
- name: Converge
hosts: all
become: true
gather_facts: true
pre_tasks:
- name: Aktualizacja pamięci podręcznej apt
ansible.builtin.apt:
update_cache: true
changed_when: false
when: ansible_pkg_mgr in ('apt')
- name: Instalacja jdk 8 (apt)
become: true
ansible.builtin.apt:
name: openjdk-8-jdk
state: present
when: ansible_pkg_mgr in ('apt')
roles:
- role: buluma.maven
maven_version: '3.9.6'
maven_install_dir: /opt/maven
- role: buluma.maven
maven_version: '3.3.9'
maven_is_default_installation: false
maven_fact_group_name: maven_3_3
# post_tasks:
# - name: Weryfikacja domyślnych faktów maven
# ansible.builtin.assert:
# that:
# - ansible_local.maven.general.version is defined
# - ansible_local.maven.general.home is defined
#
# - name: Weryfikacja faktów maven 3.3
# ansible.builtin.assert:
# that:
# - ansible_local.maven_3_3.general.version is defined
# - ansible_local.maven_3_3.general.home is defined
Maszyna musi być przygotowana. W CI robi się to za pomocą molecule/default/prepare.yml
:
---
- name: Przygotuj
hosts: all
gather_facts: false
become: true
vars:
- java_type: jdk
- java_version: "8"
roles:
- role: buluma.bootstrap
- role: buluma.core_dependencies
- role: buluma.buildtools
- role: buluma.java
java_vendor: openjdk
java_version: "11"
Zobacz także pełne wyjaśnienie i przykład dotyczące używania tych ról.
Zmienne roli
Domyślne wartości zmiennych są ustawione w defaults/main.yml
:
# kod: język=ansible
# https://github.com/gantsign/ansible-role-maven/blob/master/defaults/main.yml
---
# Numer wersji Maven
maven_version: '3.9.6'
# Lustro do pobierania paczki redistrybucyjnej Maven
maven_mirror: "http://archive.apache.org/dist/maven/maven-{{ maven_version | regex_replace('\\..*', '') }}/{{ maven_version }}/binaries"
# Katalog podstawowy instalacji dla dystrybucji Maven
maven_install_dir: /opt/maven
# Katalog do przechowywania plików pobranych do instalacji Maven
maven_download_dir: "{{ x_ansible_download_dir | default(ansible_env.HOME + '/.ansible/tmp/downloads') }}"
# Czas (w sekundach) do oczekiwania przed czasem oczekiwania pobierania Maven
maven_download_timeout: 10
# Czy używać serwera proxy przy pobieraniu Maven (jeśli zmienna środowiskowa proxy jest obecna)
maven_use_proxy: true
# Czy weryfikować certyfikaty HTTPS przy pobieraniu Maven
maven_validate_certs: true
# Jeśli to jest domyślna instalacja, utworzone zostaną dowiązania symboliczne do mvn i mvnDebug w /usr/local/bin
maven_is_default_installation: true
# Nazwa grupy faktów Ansible związanych z tą instalacją Maven.
#
# Możesz ją zastąpić, jeśli chcesz używać tej roli więcej niż raz do instalacji wielu wersji Maven.
#
# Np. maven_fact_group_name: maven_3_3
# spowoduje zmianę faktu Maven home na:
# ansible_local.maven_3_2.general.home
maven_fact_group_name: maven
Wymagania
- Pakiety pip wymienione w requirements.txt.
Stan używanych ról
Poniższe role są używane do przygotowania systemu. Możesz przygotować swój system w inny sposób.
Wymaganie | GitHub | Wersja |
---|---|---|
buluma.bootstrap | ||
buluma.buildtools | ||
buluma.core_dependencies | ||
buluma.java |
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:
Kompatybilność
Ta rola była testowana na tych obrazach kontenerowych:
kontener | tagi |
---|---|
EL | 8, 9 |
Fedora | 39, 38 |
opensuse | wszystkie |
Ubuntu | bionic, focal, jammy |
Minimalna wymagana wersja Ansible to 2.12, testy były wykonywane na:
- Poprzedniej wersji.
- Bieżącej wersji.
- Wersji deweloperskiej.
Jeśli znajdziesz jakieś błędy, zgłoś je na GitHubie
Dziennik zmian
Licencja
Informacje o autorze
ansible-galaxy install buluma.maven