gantsign.sdkman_init

Ansible ロール: SDKMAN 初期化

テスト Ansible Galaxy ライセンス

このロールは、ソフトウェア開発キットマネージャーであるSDKMANを初期化するためのものです。このロールを使用すると、特定のSDKをAnsibleのプロビジョニングの一部としてインストールし、デフォルトで使用するバージョンを設定できます。

重要: このロールを使用するには、事前にSDKMANがインストールされている必要があります。SDKMANをインストールするには、私たちのgantsign.sdkmanロールを使用できます。

要件

  • Ansible >= 2.9

  • Linuxディストリビューション

    • Debian系

      • Debian

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

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

      • Rocky Linux

        • 8
      • Fedora

        • 35
    • SUSE系

      • openSUSE

        • 15.3
    • 注意: 他のバージョンも動作する可能性がありますが、テストはされていません。

ロール変数

以下の変数は、このロールの動作を変更します:

# SDKMANはユーザーごとに初期化されるため、少なくとも1人のユーザーを指定する必要があります
users:
  - username: # SDKMANを初期化するユーザー
    sdkman_install:
      - candidate: # SDK名(例: java)
        version: # インストールする候補のバージョン
        path: # オプション。既存のSDKインストールをSDKMANに追加するため
              # 既存のSDKの`version`はSDKMANに提供されるものと同じではいけません。
              # バージョン文字列は識別子なので、他のバージョンと重複しない限り
              # 好きな値を指定できます。
    sdkman_default:
      _candidate_sdk_name_here_: # オプション。デフォルトバージョン

例プレイブック

これは、このロールだけの例設定です(SDKMANをインストールするための必要なロールなしで)。

- hosts: servers
  roles:
    - role: gantsign.sdkman_init
      users:
        - username: example_username
          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'

これは、gantsign.sdkmanロールを使用してSDKMANをインストールする完全な例です。gantsign.sdkman_initロールがAnsibleタグを使って特定のSDKを条件付きでインストールできることに注意してください。

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

    - role: gantsign.sdkman_init
      tags:
        - java
      users:
        - username: example_username
          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: example_username
          sdkman_install:
            - candidate: maven
              version: '3.5.4'
          sdkman_default:
            maven: '3.5.4'

GantSignの他のロール

GantSignの他のロールは、Ansible Galaxyで見つけることができます。

開発とテスト

このプロジェクトは、開発とテストの支援にモレキュールを使用しています。このロールは、TestinfraTestを使用して単体テストされています。

開発やテストを行うには、以下をインストールしておく必要があります:

上記をインストールするのは難しい場合があるため、このプロジェクトではMolecule Wrapperが含まれています。Molecule Wrapperは、Moleculeとその依存関係(Linuxを除く)をインストールし、その後に渡されたコマンドでMoleculeを実行するシェルスクリプトです。

このロールをMolecule Wrapperを使用してテストするには、プロジェクトのルートから以下のコマンドを実行します:

./moleculew test

注: 一部の依存関係はインストールにsudo権限が必要です。

ライセンス

Apache 2

著者情報

ジョン・フリーマン

GantSign Ltd.
会社番号: 06109112(イングランドに登録)

プロジェクトについて

Ansible role for initializing the SDKMAN software development kit manager.

インストール
ansible-galaxy install gantsign.sdkman_init
ライセンス
apache-2.0
ダウンロード
4k
所有者