Comcast.sdkman

Ansible Rolle: Comcast.sdkman

Galaxy Rolle Downloads Apache 2.0 lizenziert Build Status

Eine Ansible Rolle, die folgende Funktionen ausführt:

  • Installiere SDKMAN
  • Installiere/deinstalliere Software Kandidaten, die von SDKMAN verwaltet werden
  • Setze Standardversionen für SDKs
  • Verwalte die SDKMAN Konfigurationsdatei: /path/to/sdkman/etc/config
  • Leere die SDKMAN Caches

Warnung: Oracle hat es zunehmend erschwert, ihre JDKs zu installieren, was die Installation über SDKMAN behindert. Ziehe in Betracht, stattdessen OpenJDK zu verwenden oder das Oracle JDK auf andere Weise zu installieren/verwalten.

Anforderungen

Keine.

Rollenvariablen

Siehe die defaults für eine Beschreibung der variablen, die überschrieben werden können.

Abhängigkeiten

Keine.

Beispiel-Playbook

Hier ist ein Beispiel!

- hosts: server
  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 }
        # Verwende diese Syntax, wenn SDKMAN über Pakete Bescheid wissen soll, 
        # die *ohne* SDKMAN installiert wurden, z. B. Oracle JDKs
        - { 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

Zusätzliche Hinweise

Wenn Sie Schritte überspringen möchten, die eine Erhöhung der Berechtigungen erfordern (d. h. sudo Befehle), hat diese Rolle diese Aufgaben mit dem Tag sdkman_privilege versehen. Übergeben Sie das Flag --skip-tags in der Befehlszeile mit diesem Tag, um Schritte zu umgehen, die möglicherweise bereits von Ihrem Systemadministrator abgeschlossen wurden (z. B. Installation von Systempaketen).

Die Tests dieser Rolle mit Alpine Linux waren eine große Herausforderung. Die neueren JDK-Versionen (>-11), die über SDKMAN verfügbar sind, sind nicht mit Alpine kompatibel. Es wird empfohlen, ein JDK/JRE über das apk-Paketrepository zu installieren. Das gesagt, ich bin mir derzeit unsicher, wie gut SDKMAN-Pakete auf Alpine funktionieren. Ihre Erfahrungen können variieren. Sie wurden gewarnt.

Lizenz

Apache 2.0

Autoreninformationen

Über das Projekt

An Ansible role that installs/manages SDKMAN

Installieren
ansible-galaxy install Comcast.sdkman
Lizenz
apache-2.0
Downloads
96.8k
Besitzer
Comcast brings together the best in media and technology to create the world's best entertainment and online experiences