Comcast.sdkman

Rol de Ansible: Comcast.sdkman

Rol Galaxy Descargas Licencia Apache 2.0 Estado de Construcción

Un rol de Ansible que realiza las siguientes funciones:

  • Instalar SDKMAN
  • Instalar/desinstalar software gestionado por SDKMAN candidatos
  • Establecer versiones predeterminadas de SDK
  • Gestionar el archivo de configuración de SDKMAN: /path/to/sdkman/etc/config
  • Limpiar las cachés de SDKMAN

Advertencia: Oracle ha dificultado cada vez más la instalación de sus JDK, lo que ha impedido la posibilidad de instalarlos a través de SDKMAN. Considera usar el OpenJDK en su lugar o instalar/gestionar el JDK de Oracle por otros medios.

Requisitos

Ninguno.

Variables de Rol

Consulta los valores predeterminados para una descripción de cada variable sobreescribible.

Dependencias

Ninguna.

Ejemplo de Playbook

¡Aquí tienes un ejemplo!

- hosts: servers
  roles:
    - role: Comcast.sdkman
      sdkman_user: vagrant
      sdkman_group: vagrant
      sdkman_auto_answer: true
      sdkman_update: true
      sdkman_uninstall_packages:
        - { candidate: groovy, version: 1.8.9 }
      sdkman_install_packages:
        - { candidate: java, version: 8.0.202-zulu }
        - { candidate: gradle, version: '3.5' }
        - { candidate: gradle, version: 2.14.1 }
        - { candidate: maven, version: 3.5.0 }
        - { candidate: maven, version: 3.3.9 }
        # Usa esta sintaxis si quieres que SDKMAN conozca los paquetes instalados *sin* SDKMAN, por ejemplo, JDKs de Oracle
        - { candidate: java, version: 1.8.0-oracle, localpath: /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk }
      sdkman_defaults:
        gradle: '3.5'
        maven: 3.3.9
        java: 8.0.202-zulu
      sdkman_flush_caches_before:
        - temp
      sdkman_flush_caches_after:
        - archives
        - broadcast
        - candidates
        - temp
      sdkman_offline_mode: false
      sdkman_update_alternatives:
        - candidate: java
          name: java
          link: /usr/bin/java
        - candidate: java
          name: javac
          link: /usr/bin/javac

Notas Adicionales

Si deseas omitir cualquier paso que requiera elevación de privilegios (es decir, comandos sudo), este rol ha etiquetado esas tareas con la etiqueta sdkman_privilege. Pasa la opción --skip-tags en la línea de comandos con esta etiqueta para omitir cualquier paso que ya haya sido completado por tu administrador del sistema (por ejemplo, la instalación de paquetes del sistema).

Probar este rol con Alpine Linux ha sido una tarea difícil. Las versiones más recientes de JDK (>-11) disponibles a través de SDKMAN no son compatibles con Alpine. En su lugar, se recomienda instalar un JDK/JRE a través del repositorio de paquetes apk. Dicho esto, actualmente no estoy seguro de cuán bien funcionan los paquetes de SDKMAN en Alpine. Tu experiencia puede variar. Has sido advertido.

Licencia

Apache 2.0

Información del Autor

Acerca del proyecto

An Ansible role that installs/manages SDKMAN

Instalar
ansible-galaxy install Comcast.sdkman
Licencia
apache-2.0
Descargas
96.8k
Propietario
Comcast brings together the best in media and technology to create the world's best entertainment and online experiences