gantsign.sdkman_init

Ansible Rolle: SDKMAN Initialisierung

Tests Ansible Galaxy Lizenz

Diese Rolle dient zur Initialisierung von SDKMAN, einem Software-Entwicklungs-Kit-Manager. Mit dieser Rolle können Sie bestimmte SDKs als Teil Ihrer Ansible-Konfiguration installieren und festlegen, welche Versionen standardmäßig verwendet werden sollen.

Wichtig: Diese Rolle erfordert, dass SDKMAN bereits installiert ist. Sie können unsere Rolle gantsign.sdkman verwenden, um SDKMAN zu installieren.

Anforderungen

  • Ansible >= 2.9

  • Linux Distribution

    • Debian Familie

      • Debian

        • Stretch (9)
        • Buster (10)
        • Bullseye (11)
      • Ubuntu

        • Bionic (18.04)
        • Focal (20.04)
    • RedHat Familie

      • Rocky Linux

        • 8
      • Fedora

        • 35
    • SUSE Familie

      • openSUSE

        • 15.3
    • Hinweis: Andere Versionen könnten funktionieren, wurden aber nicht getestet.

Rollenvariablen

Die folgenden Variablen ändern das Verhalten dieser Rolle:

# SDKMAN wird pro Benutzer initialisiert, daher müssen Sie mindestens einen Benutzer angeben
users:
  - username: # Benutzer, für den SDKMAN initialisiert werden soll
    sdkman_install:
      - candidate: # Name des SDK-Kandidaten z.B. java
        version: # Version des zu installierenden Kandidaten
        path: # Optional. Um eine vorhandene SDK-Installation zu SDKMAN hinzuzufügen.
              # Die `version` für das vorhandene SDK darf nicht die gleiche sein wie 
              # die von SDKMAN bereitgestellten. Der Versions-String ist nur ein 
              # Identifier, daher können Sie ihm jeden beliebigen Wert geben (solange 
              # es nicht mit anderen Versionen für diesen Kandidaten in Konflikt steht).
    sdkman_default:
      _candidate_sdk_name_here_: # Optional. Standardversion

Beispiel Playbooks

Hier ist eine Beispielkonfiguration für diese Rolle allein (ohne die notwendige Rolle zur Installation von SDKMAN).

- hosts: servers
  roles:
    - role: gantsign.sdkman_init
      users:
        - username: beispiel_benutzername
          sdkman_install:
            - candidate: java
              version: '8.0.181-zulu'
            - candidate: java
              version: '10'
              path: '/opt/java/jdk-10.0.2'
            - candidate: maven
              version: '3.5.4'
          sdkman_default:
            java: '10'
            maven: '3.5.4'

Dies ist ein vollständiges Beispiel, das die Rolle gantsign.sdkman zur Installation von SDKMAN verwendet. Beachten Sie, dass die Rolle gantsign.sdkman_init mehr als einmal mit Ansible-Tag verwendet werden kann, um bestimmte SDKs bedingt zu installieren.

- hosts: servers
  roles:
    - role: gantsign.sdkman
      sdkman_users:
        - beispiel_benutzername

    - role: gantsign.sdkman_init
      tags:
        - java
      users:
        - username: beispiel_benutzername
          sdkman_install:
            - candidate: java
              version: '8.0.181-zulu'
            - candidate: java
              version: '10'
              path: '/opt/java/jdk-10.0.2'
          sdkman_default:
            java: '10'

    - role: gantsign.sdkman_init
      tags:
        - java
        - maven
      users:
        - username: beispiel_benutzername
          sdkman_install:
            - candidate: maven
              version: '3.5.4'
          sdkman_default:
            maven: '3.5.4'

Weitere Rollen von GantSign

Sie finden weitere Rollen von GantSign auf Ansible Galaxy.

Entwicklung & Testing

Dieses Projekt verwendet Molecule zur Unterstützung bei der Entwicklung und dem Testing; die Rolle wird mit Testinfra und pytest getestet.

Um zu entwickeln oder zu testen, müssen Sie Folgendes installiert haben:

Da die Installation der oben genannten Software schwierig sein kann, enthält dieses Projekt Molecule Wrapper. Molecule Wrapper ist ein Shell-Skript, das Molecule und dessen Abhängigkeiten (außer Linux) installiert und dann Molecule mit dem übergebenen Befehl ausführt.

Um diese Rolle mit Molecule Wrapper zu testen, führen Sie den folgenden Befehl aus dem Projektstammverzeichnis aus:

./moleculew test

Hinweis: Einige der Abhängigkeiten benötigen sudo-Berechtigungen zur Installation.

Lizenz

Apache 2

Autoreninformation

John Freeman

GantSign Ltd. Firmen-Nr. 06109112 (eingetragen in England)

Über das Projekt

Ansible role for initializing the SDKMAN software development kit manager.

Installieren
ansible-galaxy install gantsign.sdkman_init
GitHub Repository
Lizenz
apache-2.0
Downloads
4k
Besitzer