William-Yeh.oracle_java
williamyeh.oracle-java para Ansible Galaxy
Resumen
Nombre del rol en Ansible Galaxy: williamyeh.oracle-java
Este rol de Ansible tiene las siguientes características para Oracle JDK:
- Instalar JDK versión 7 u 8.
- Instalar extensiones de criptografía de Java (JCE) opcionales.
- Instalar para las familias CentOS, Debian/Ubuntu, SUSE y Mac OS X.
Si prefieres OpenJDK, prueba alternativas como geerlingguy.java o smola.java.
Variables del Rol
Variables obligatorias
Ninguna.
Variables opcionales
Valores configurables por el usuario:
# ¿qué versión?
java_version: 8
# ¿qué subversión?
java_subversion: 112
# ¿en qué directorio poner el archivo descargado?
java_download_path: /tmp
# ubicación del archivo rpm/tar.gz:
# - true: descargar de Oracle en el momento;
# - false: copiar de `{{ playbook_dir }}/files` en la máquina de control.
java_download_from_oracle: true
# ¿remover archivos descargados temporalmente?
java_remove_download: true
# ¿establecer $JAVA_HOME?
java_set_javahome: false
# ¿instalar JCE?
java_install_jce: false
Para otras configuraciones internas, lee el archivo tasks/set-role-variables.yml
; por ejemplo, combinaciones soportadas de java_version
/java_subversion
.
Si deseas instalar una versión de Java que no se soporta directamente, debes especificar el número de compilación de Java correspondiente en la variable java_build
, además de java_version
y java_subversion
, por ejemplo:
---
- hosts: all
roles:
- williamyeh.oracle-java
vars:
java_version: 8
java_subversion: 91
java_build: 14
Variables personalizadas, si es absolutamente necesario
Si tienes un jdk_tarball_file
pre-descargado cuyo nombre no puede ser inferido correctamente por tasks/set-role-variables.yml
, puedes especificarlo explícitamente:
# Especifica el nombre del archivo predescargado (sin .tar.gz o .rpm o .dmg);
# utilizado en conjunto con `java_download_from_oracle: false`.
jdk_tarball_file
# Por ejemplo, si tienes un `files/jdk-7u79-linux-x64.tar.gz` localmente,
# pero el nombre no puede ser inferido correctamente por `tasks/set-role-variables.yml`,
# puedes especificar las siguientes variables en tu playbook:
#
# java_version: 7
# java_subversion: 79
# java_download_from_oracle: false
# jdk_tarball_file: jdk-7u79-linux-x64
#
Uso
Paso 1: agregar rol
Agrega el nombre del rol williamyeh.oracle-java
a tu archivo de playbook.
Paso 2: agregar variables
Establece las variables en tu archivo de playbook.
Ejemplo simple:
---
# archivo: simple-playbook.yml
- hosts: all
roles:
- williamyeh.oracle-java
vars:
java_version: 8
(Opcionalmente) predescargar archivos .rpm y .tar.gz
Por algunas razones, puede que quieras predescargar archivos .rpm y .tar.gz antes de ejecutar este rol, en lugar de descargarlos de Oracle en el momento.
Para hacer esto, coloca el archivo en el directorio {{ playbook_dir }}/files
por adelantado, y luego establece la variable java_download_from_oracle
en false
:
---
# archivo: prefetch-playbook.yml
- hosts: all
roles:
- williamyeh.oracle-java
vars:
java_version: 8
java_download_from_oracle: false
Dependencias
Licencia
Licenciado bajo la Licencia Apache V2.0. Consulta el archivo de LICENCIA para más detalles.
Historia
Reescrito desde mi versión previa a Galaxy: server-config-template.
Oracle JDK 7/8 for CentOS/Debian/Ubuntu/Suse/MacOSX
ansible-galaxy install William-Yeh.oracle_java