buluma.maven

Rol de Ansible maven

Instala y configura Apache Maven en tus sistemas.

GitHub Versión Problemas Solicitudes de Extracción Descargas
github Versión Problemas Solicitudes de Extracción Rol de Ansible

Ejemplo de Playbook

Este ejemplo se toma de molecule/default/converge.yml y se prueba en cada actualización, solicitud de extracción y lanzamiento.

# código: lenguaje=ansible
---
- nombre: Converge
  hosts: all
  become: true
  gather_facts: true

  pre_tasks:
    - nombre: Actualizar caché de apt
      ansible.builtin.apt:
        update_cache: true
      changed_when: false
      when: ansible_pkg_mgr in ('apt')

    - nombre: Instalar 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:
  #   - nombre: Verificar hechos de maven por defecto
  #     ansible.builtin.assert:
  #       that:
  #         - ansible_local.maven.general.version está definido
  #         - ansible_local.maven.general.home está definido
  #
  #   - nombre: Verificar hechos de maven 3.3
  #     ansible.builtin.assert:
  #       that:
  #         - ansible_local.maven_3_3.general.version está definido
  #         - ansible_local.maven_3_3.general.home está definido

Es necesario preparar la máquina. En CI se hace usando molecule/default/prepare.yml:

---
- nombre: Preparar
  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"

También puedes ver una explicación y ejemplo completo sobre cómo usar estos roles.

Variables del Rol

Los valores predeterminados para las variables se establecen en defaults/main.yml:

# código: lenguaje=ansible
# https://github.com/gantsign/ansible-role-maven/blob/master/defaults/main.yml
---
# Número de versión de Maven
maven_version: '3.9.6'

# Espejo para descargar el paquete redistribuible de Maven
maven_mirror: "http://archive.apache.org/dist/maven/maven-{{ maven_version | regex_replace('\\..*', '') }}/{{ maven_version }}/binaries"

# Directorio de instalación base de la distribución de Maven
maven_install_dir: /opt/maven

# Directorio para almacenar archivos descargados para la instalación de Maven
maven_download_dir: "{{ x_ansible_download_dir | default(ansible_env.HOME + '/.ansible/tmp/downloads') }}"

# El número de segundos a esperar antes de que se agote el tiempo de descarga de Maven
maven_download_timeout: 10

# Si se debe utilizar el proxy al descargar Maven (si la variable de entorno del proxy está presente)
maven_use_proxy: true

# Si se deben validar los certificados HTTPS al descargar Maven
maven_validate_certs: true

# Si esta es la instalación predeterminada, se crearán enlaces simbólicos a mvn y mvnDebug en /usr/local/bin
maven_is_default_installation: true

# Nombre del grupo de hechos de Ansible relacionados con esta instalación de Maven.
#
# Anula si deseas usar este rol más de una vez para instalar múltiples versiones
# de Maven.
#
# ejemplo: maven_fact_group_name: maven_3_3
# cambiaría el hecho del hogar de Maven a:
# ansible_local.maven_3_2.general.home
maven_fact_group_name: maven

Requisitos

Estado de los roles utilizados

Los siguientes roles se utilizan para preparar un sistema. Puedes preparar tu sistema de otra manera.

Requisito GitHub Versión
buluma.bootstrap Ansible Molecule Versión
buluma.buildtools Ansible Molecule Versión
buluma.core_dependencies Ansible Molecule Versión
buluma.java Ansible Molecule Versión

Contexto

Este rol es parte de muchos roles compatibles. Consulta la documentación de estos roles para más información.

Aquí hay un resumen de los roles relacionados:

dependencias

Compatibilidad

Este rol ha sido probado en estas imágenes de contenedor:

contenedor etiquetas
EL 8, 9
Fedora 39, 38
opensuse todas
Ubuntu bionic, focal, jammy

La versión mínima de Ansible requerida es 2.12, se han realizado pruebas en:

  • La versión anterior.
  • La versión actual.
  • La versión de desarrollo.

Si encuentras problemas, regístralos en GitHub.

Historial de Cambios

Historial del Rol

Licencia

Apache-2.0

Información del Autor

Shadow Walker

Acerca del proyecto

Install and configure Apache Maven on your systems.

Instalar
ansible-galaxy install buluma.maven
Licencia
apache-2.0
Descargas
4.2k
Propietario
DevOps Engineer