nioniosfr.github_release

Ansibleロール: GitHubリリース

GitHubでリリースされたバイナリアプリケーションをLinux x86_64ベースのディストリビューションにインストールするための一般的なロールです。

要件

このロールは、x86_64アーキテクチャで構築されたDebianおよびRHELベースのシステムを対象としています。

このロールはリモートマシンで実行されるため、リモートマシンにはインターネット接続が必要です。

このロールは非常に一般的であるため、どのパッケージがインストールされるかには注意が必要です。

重要: ダウンロードのチェックサムを一般的に検証する方法はないため、インストールしようとしているパッケージを必ず確認してください。

ロール変数

必須:

ghr_org_name: # 有効なGitHubの組織名
ghr_app_name: # 組織に属する有効なGitHubリポジトリ名

デフォルト:

ghr_app_version: "latest" # 次のURLからの有効なリリース版: https://github.com/{{ ghr_org_name }}/{{ ghr_app_name }}/releases/

ghr_app_binary_dest: "/opt/{{ ghr_app_name }}" # `ghr_app_name`バイナリを配置する宛先ディレクトリ

ghr_app_cleanup_after: false # trueに設定すると、すべてのダウンロードファイルがクリーンアップされます

ghr_app_configure_system_path: true # `ghr_app_binary_dest`ディレクトリをシステムの`PATH`に追加するかどうか
ghr_app_system_path_prepend: false # (ghr_app_configure_system_pathがTrueの場合) `PATH`に`ghr_app_binary_dest`ディレクトリを追加するか、先頭に挿入するか

ghr_app_tmp_dir: # ダウンロードしたアーカイブを保存する一時フォルダ

ghr_app_releases_url: # GitHubリリースのURL
ghr_app_archive: # アーカイブの名前

依存関係

なし

使用例

ロールを複数回実行すると、変数のマージに問題が生じる可能性があります。

推奨される使用方法は、ホストの実行ごとに1つのロールを実行することです。

    - hosts: localhost
      roles:
        - role: nioniosfr.github_release
          vars:
            ghr_org_name: "digitalocean"
            ghr_app_name: "doctl"
            ghr_app_version: "1.18.0"
            ghr_app_tmp_dir: "/mnt/nfs_share/downloads" # ダウンロードしたアーカイブを'/tmp'よりも永続的なパスに保存

    - hosts: localhost
      roles:
        - role: nioniosfr.github_release
          vars:
            ghr_org_name: "stedolan"
            ghr_app_name: "jq"
            ghr_app_version: "1.6"
            ghr_app_releases_endpoint: "{{ ghr_app_name }}-{{ ghr_app_version }}"
            ghr_app_archive: "{{ ghr_app_name }}-linux64"
            ghr_app_is_binary: true

    - hosts: localhost
      roles:
        - role: nioniosfr.github_release
          vars:
            ghr_org_name: "digitalocean"
            ghr_app_name: "doctl"
            ghr_app_version: "1.18.0"
            ghr_app_binary_dest: "/usr/local/bin" # 一般ユーザーパスにインストール
            ghr_app_configure_system_path: false # ユーザーのためにシステムのパスを変更しない
            ghr_app_tmp_dir: "/mnt/nfs_share/downloads" # ダウンロード用のフォルダを変更
            ghr_app_cleanup_after: true # ダウンロードしたファイルと、以前の実行から作成された場合は`app`用のシステムprofile.dも削除

ライセンス

MIT

著者情報

NioniosFr

プロジェクトについて

A generic role to install a binary application released on GitHub in a Linux x86_64 based distro.

インストール
ansible-galaxy install nioniosfr.github_release
ライセンス
mit
ダウンロード
190
所有者
Principal Engineer