buluma.maven

Ansible-Rolle maven

Installieren und konfigurieren Sie Apache Maven auf Ihren Systemen.

GitHub Version Issues Pull Requests Downloads
github Version Issues PullRequests Ansible Role

Beispiel-Playbook

Dieses Beispiel stammt aus molecule/default/converge.yml und wird bei jedem Push, Pull-Request und Release getestet.

# code: language=ansible
---
- name: Konvergenz
  hosts: all
  become: true
  gather_facts: true

  pre_tasks:
    - name: Apt-Cache aktualisieren
      ansible.builtin.apt:
        update_cache: true
      changed_when: false
      when: ansible_pkg_mgr in ('apt')

    - name: JDK 8 installieren (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: Standard-Maven-Fakten überprüfen
  #     ansible.builtin.assert:
  #       that:
  #         - ansible_local.maven.general.version is defined
  #         - ansible_local.maven.general.home is defined
  #
  #   - name: Maven 3.3 Fakten überprüfen
  #     ansible.builtin.assert:
  #       that:
  #         - ansible_local.maven_3_3.general.version is defined
  #         - ansible_local.maven_3_3.general.home is defined

Die Maschine muss vorbereitet werden. In CI geschieht dies mit molecule/default/prepare.yml:

---
- name: Vorbereitung
  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"

Siehe auch eine vollständige Erklärung und Beispiel zur Verwendung dieser Rollen.

Rollenvariablen

Die Standardwerte für die Variablen sind in defaults/main.yml festgelegt:

# code: language=ansible
# https://github.com/gantsign/ansible-role-maven/blob/master/defaults/main.yml
---
# Maven Versionsnummer
maven_version: '3.9.6'

# Mirror, um das Redistributable-Paket von Maven herunterzuladen
maven_mirror: "http://archive.apache.org/dist/maven/maven-{{ maven_version | regex_replace('\\..*', '') }}/{{ maven_version }}/binaries"

# Basisinstallationsverzeichnis für die Maven-Distribution
maven_install_dir: /opt/maven

# Verzeichnis zum Speichern der für die Maven-Installation heruntergeladenen Dateien
maven_download_dir: "{{ x_ansible_download_dir | default(ansible_env.HOME + '/.ansible/tmp/downloads') }}"

# Die Anzahl der Sekunden, die gewartet werden soll, bevor der Maven-Download abbricht
maven_download_timeout: 10

# Ob ein Proxy verwendet werden soll, wenn Maven heruntergeladen wird
maven_use_proxy: true

# Ob HTTPS-Zertifikate beim Herunterladen von Maven validiert werden sollen
maven_validate_certs: true

# Wenn dies die Standardinstallation ist, werden symbolische Links zu mvn und mvnDebug erstellt
# in /usr/local/bin
maven_is_default_installation: true

# Name der Gruppe der Ansible-Fakten, die sich auf diese Maven-Installation beziehen.
#
# Überschreiben Sie dies, wenn Sie diese Rolle mehr als einmal verwenden möchten, um mehrere Versionen
# von Maven zu installieren.
#
# z.B. maven_fact_group_name: maven_3_3
# würde das Maven-Haussachformat ändern zu:
# ansible_local.maven_3_2.general.home
maven_fact_group_name: maven

Anforderungen

Status der verwendeten Rollen

Die folgenden Rollen werden verwendet, um ein System vorzubereiten. Sie können Ihr System auch anderweitig vorbereiten.

Anforderung GitHub Version
buluma.bootstrap Ansible Molecule Version
buluma.buildtools Ansible Molecule Version
buluma.core_dependencies Ansible Molecule Version
buluma.java Ansible Molecule Version

Kontext

Diese Rolle ist Teil vieler verwandter Rollen. Weitere Informationen finden Sie in der Dokumentation dieser Rollen.

Hier ist eine Übersicht über verwandte Rollen:

dependencies

Kompatibilität

Diese Rolle wurde auf diesen Container-Images getestet:

Container Tags
EL 8, 9
Fedora 39, 38
opensuse alle
Ubuntu bionic, focal, jammy

Die minimal benötigte Version von Ansible ist 2.12, die Tests wurden an:

  • der vorherigen Version.
  • der aktuellen Version.
  • der Entwicklungsversion.

Wenn Sie Probleme finden, registrieren Sie diese bitte in GitHub.

Änderungsprotokoll

Rollenhistorie

Lizenz

Apache-2.0

Autoreninformation

Shadow Walker

Über das Projekt

Install and configure Apache Maven on your systems.

Installieren
ansible-galaxy install buluma.maven
GitHub Repository
Lizenz
apache-2.0
Downloads
4.2k
Besitzer
DevOps Engineer