buluma.maven

Rôle Ansible maven

Installer et configurer Apache Maven sur vos systèmes.

GitHub Version Problèmes Demandes de tirage Téléchargements
github Version Issues PullRequests Ansible Role

Exemple de Playbook

Cet exemple est tiré de molecule/default/converge.yml et est testé à chaque envoi, demande de tirage et publication.

# code: language=ansible
---
- name: Converger
  hosts: tous
  become: vrai
  gather_facts: vrai

  pre_tasks:
    - name: Mettre à jour le cache apt
      ansible.builtin.apt:
        update_cache: vrai
      changed_when: faux
      when: ansible_pkg_mgr in ('apt')

    - name: Installer jdk 8 (apt)
      become: vrai
      ansible.builtin.apt:
        name: openjdk-8-jdk
        state: présent
      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: faux
      maven_fact_group_name: maven_3_3

  # post_tasks:
  #   - name: Vérifier les faits par défaut de maven
  #     ansible.builtin.assert:
  #       that:
  #         - ansible_local.maven.general.version est défini
  #         - ansible_local.maven.general.home est défini
  #
  #   - name: Vérifier les faits de maven 3.3
  #     ansible.builtin.assert:
  #       that:
  #         - ansible_local.maven_3_3.general.version est défini
  #         - ansible_local.maven_3_3.general.home est défini

La machine doit être préparée. Dans CI, cela se fait en utilisant molecule/default/prepare.yml:

---
- name: Préparer
  hosts: tous
  gather_facts: faux
  become: vrai
  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"

Voir aussi une explication complète et un exemple sur comment utiliser ces rôles.

Variables de Rôle

Les valeurs par défaut pour les variables sont définies dans defaults/main.yml:

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

# Miroir pour télécharger le package redistribuable de Maven
maven_mirror: "http://archive.apache.org/dist/maven/maven-{{ maven_version | regex_replace('\\..*', '') }}/{{ maven_version }}/binaries"

# Répertoire d'installation de la distribution Maven
maven_install_dir: /opt/maven

# Répertoire pour stocker les fichiers téléchargés pour l'installation de Maven
maven_download_dir: "{{ x_ansible_download_dir | default(ansible_env.HOME + '/.ansible/tmp/downloads') }}"

# Le nombre de secondes à attendre avant que le téléchargement de Maven ne dépasse
maven_download_timeout: 10

# Si nous devons utiliser le proxy lors du téléchargement de Maven (si la variable d'environnement proxy est présente)
maven_use_proxy: vrai

# Si nous devons valider les certificats HTTPS lors du téléchargement de Maven
maven_validate_certs: vrai

# Si c'est l'installation par défaut, des liens symboliques vers mvn et mvnDebug seront
# créés dans /usr/local/bin
maven_is_default_installation: vrai

# Nom du groupe de faits Ansible liés à cette installation de Maven.
#
# Remplacez si vous voulez utiliser ce rôle plus d'une fois pour installer plusieurs versions
# de Maven.
#
# ex : maven_fact_group_name: maven_3_3
# changerait le fait d'emplacement Maven à :
# ansible_local.maven_3_2.general.home
maven_fact_group_name: maven

Exigences

État des rôles utilisés

Les rôles suivants sont utilisés pour préparer un système. Vous pouvez préparer votre système d'une autre manière.

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

Contexte

Ce rôle fait partie de plusieurs rôles compatibles. Consultez la documentation de ces rôles pour plus d'informations.

Voici un aperçu des rôles connexes :

dépendances

Compatibilité

Ce rôle a été testé sur ces images de conteneur:

conteneur tags
EL 8, 9
Fedora 39, 38
opensuse tous
Ubuntu bionic, focal, jammy

La version minimum d'Ansible requise est 2.12, des tests ont été réalisés pour :

  • La version précédente.
  • La version actuelle.
  • La version de développement.

Si vous trouvez des problèmes, veuillez les signaler sur GitHub.

Journal des modifications

Historique du rôle.

Licence

Apache-2.0.

Informations sur l'auteur

Shadow Walker

À propos du projet

Install and configure Apache Maven on your systems.

Installer
ansible-galaxy install buluma.maven
Licence
apache-2.0
Téléchargements
4.2k
Propriétaire
DevOps Engineer