buluma.maven

Rola Ansible maven

Zainstaluj i skonfiguruj Apache Maven na swoich systemach.

GitHub Wersja Zgłoszenia Prośby o włączenie Pobrania
github Version Issues PullRequests Ansible Role

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

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 Ansible Molecule Version
buluma.buildtools Ansible Molecule Version
buluma.core_dependencies Ansible Molecule Version
buluma.java Ansible Molecule Version

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:

zależności

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

Historia roli

Licencja

Apache-2.0

Informacje o autorze

Shadow Walker

O projekcie

Install and configure Apache Maven on your systems.

Zainstaluj
ansible-galaxy install buluma.maven
Licencja
apache-2.0
Pobrania
4.2k
Właściciel
DevOps Engineer