klaatu51.github_downloader
Ansible ロール: github_downloader
Ansible ロールは、GitHub リポジトリのリリースからバイナリファイルを希望の場所にダウンロードします。
要件
このロールは Ansible 2.10.0 以上でテストされており、Linux/UNIX ベースのプラットフォームで動作します。
免責事項
問題がある場合は GitHub の issue を作成してください。このロールは私の空いている時間に管理しているため、迅速な修正をお約束することはできません。
ロール変数
以下は変数のリストです。より詳細な説明については defaults/main.yml を参照してください。
変数名 | 短い説明 | デフォルト値 |
---|---|---|
github_download_packages |
ダウンロードするバイナリのリスト。以下の例を参照。 | [] |
github_download_location |
ダウンロード先の場所。 | $HOME/bin |
github_download_pat_token |
APIをクエリするためのPATトークン | なし |
github_download_hostname |
GitHub のホスト名。 | github.com |
github_download_api_hostname |
GitHub API のホスト名。 | api.github.com |
ファイル名テンプレート
次の変数はファイル名で使用でき、Ansible のファクトで発見された値に置き換えられます。
変数名 | 説明 | 例 |
---|---|---|
%ARCH% |
OS アーキテクチャ | amd64 |
%ARCHRAW% |
OS アーキテクチャ(x86_64 をamd64 に置き換えない) |
x86_64 |
%OS% |
OS ファミリー (小文字) | linux / darwin |
%OSCAPITALIZED% |
OS ファミリー (大文字) | Linux / Darwin |
%VERSION% |
パッケージのバージョン | v1.20.0 |
%NVERSION% |
パッケージのバージョン(v プレフィックスなし) |
1.20.0 |
依存関係
他のロールに依存関係はありません。
サンプルプレイブック
GitHub からユーザーのリストを作成するサンプルプレイブック
- hosts: all
become: true
vars:
github_download_packages:
- name: package_name
repo: owner/repo
version: 1.0.2 # 'latest' も可
filename: package_name-%VERSION%-%OS%-%ARCH%.tar.gz # README.md のファイル名テンプレートを参照
extracted_filename: package_name-%VERSION%
command: package_name install
command_become: false # このコマンドのために root に昇格
roles:
- role: xanmanning.github_downloader