cans.package-install

cans.package-install

ビルドステータス Ansible Galaxy ライセンス

指定されたDebianパッケージ(.deb)のリストをインストールするシンプルなAnsibleロールです。

このロールの目的は、多機能ではなく、シンプルで効率的、かつ再利用可能なパッケージインストール方法を提供することです。基本的には、パッケージのリストを与えると、それらをインストールする手順です。

要件

このロールには特別な前提条件はありませんが、ターゲットサーバーがDebianディストリビューションまたはその派生版を使用していることが前提です。

ロール変数

このロール内のすべての変数はpkginstall_プレフィックスで名前空間化されています。

また、このロールは内部使用のための変数も定義しています。これらは_pkginstall_がプレフィックスとして付けられており、使用しない方がよいです。

入力変数

このロールが何か処理を行うには、pkginstall_packages_absentpkginstall_packages_presentのいずれか、または両方を定義する必要があります。

  • pkginstall_packages: 非推奨 pkginstall_package_presentを使用してください(デフォルト: [])。
  • pkginstall_packages_present: ターゲットホストにインストールされるべきパッケージ名のリスト(デフォルト: [])。
  • pkginstall_packages_absent: ターゲットホストにインストールされないべきパッケージ名のリスト(デフォルト: [])。

デフォルト

  • pkginstall_apt_package_list_cache_directory: 利用可能なパッケージリストとパッケージ内容リストを保存するディレクトリのパス。この変数はpkginstall_cache_purgetrueに設定した場合にのみ必要です(以下参照)。変更する必要がある可能性は非常に低いです。(デフォルト: "/var/lib/apt/lists"
  • pkginstall_cache_ttl: パッケージキャッシュの有効期間(秒)(デフォルト: 3600)
  • pkginstall_cache_update: パッケージをインストールする前にパッケージキャッシュを更新するかどうか(デフォルト: true
  • pkginstall_purge: パッケージを削除する際にその設定ファイルも削除するかどうか(デフォルト: true)。
  • pkginstall_recommended: 明示的にインストールされるパッケージに加えて推奨パッケージもインストールするかどうか(デフォルト: false)。
  • pkginstall_update_cache: 非推奨 pkginstall_cache_updateを使用してください(デフォルト: true

依存関係

このロールには正式な依存関係はありませんが、実際に何かを実行するにはpkginstall_packages変数を上書きする必要があります(参照:以下の例のプレイブック)。

また、追加のパッケージリポジトリをAPTが既に知っているリポジトリに追加するために、cans.package-sourceロールと併用することも検討できます。

例プレイブック

first_rolesecond_roleの2つのロールがあり、それぞれパッケージのリストを含む変数(first_role_packagessecond_role_packages)を定義していると仮定します。このロールを使用するために、最初に両方のリストを結合したpkginstall_packages変数を割り当てます。そして、ロールを呼び出します。

- hosts: servers
  vars:
    pkginstall_packages: "{{ first_role_packages + second_role_packages }}"
  roles:
    - role: cans.package-install
    - role: first_role
    - role: second_role

何らかの理由で一度にすべてのパッケージをインストールできない場合(例: first_rolesecond_roleのパッケージをインストールする前に必要なものをインストールまたは設定する場合):

- hosts: servers
  roles:
    - role: cans.package-install
      pkginstall_packages: "{{ first_role_packages }}"
    - role: first_role
    - role: cans.package-install
      pkginstall_packages: "{{ second_role_packages }}"
    - role: second_role

上記の例では、Ansibleがターゲットサーバーに接続する際に、パッケージをインストールするのに十分な権限を持つユーザーが必要です。そうでない場合は、remote_userまたはbecomeのいずれか、または両方のキーワードを使用する必要があります:

- hosts: servers
  remote_user: "privileged-user"
  vars:
    pkginstall_packages: "{{ first_role_packages + second_role_packages }}"
  roles:
    - role: cans.package-install
      become: yes
    - role: first_role
    - role: second_role

ライセンス

GPLv2

著者情報

著作権 © 2017-2018, Nicolas CANIART.

プロジェクトについて

Simple Ansible Role that installs a given list of Debian packages (`.deb`).

インストール
ansible-galaxy install cans.package-install
ライセンス
gpl-2.0
ダウンロード
536
所有者