tehtbl.tmux
ロールの説明
システムにtmuxをインストールして設定します。
例のプレイブック
この例は molecule/default/converge.yml
から取られており、プッシュ、プルリクエスト、リリースごとにテストされます。
---
- name: Converge
hosts: all
become: true
gather_facts: false
roles:
- role: tehtbl.tmux
このプレイブックを使用して、ロールが機能するために必要な準備を行うことがあります。
---
- name: Prepare
hosts: all
become: true
gather_facts: false
roles:
- role: tehtbl.bootstrap
ロール変数
これらの変数は defaults/main.yml
に設定されています:
---
# ------------------------------------------------------------------------
# tmuxのデフォルトファイル
# ------------------------------------------------------------------------
tmux_version: "2.9a"
tmux_url: "https://github.com/tmux/tmux/releases/download/{{ tmux_version }}/tmux-{{ tmux_version }}.tar.gz"
要件
- パッケージを含むリポジトリにアクセスできること(おそらくインターネット上)。
- 最近のAnsibleのバージョン。(テストは現在、前回、次回のAnsibleリリースで実行されます。)
コンテキスト
このロールは多くの互換性のあるロールの一部です。詳細については 私の他のロール をご覧ください。
互換性
このロールは以下の Docker イメージでテストされています:
コンテナ | タグ | 失敗を許可する |
---|---|---|
debian | stable | いいえ |
debian | testing | いいえ |
debian | unstable | はい |
ubuntu | xenial | はい |
ubuntu | bionic | いいえ |
ubuntu | focal | いいえ |
ubuntu | devel | はい |
このロールは以下のAnsibleバージョンでテストされています:
- ansible>=2.8, <2.9
- ansible>=2.9
- git+https://github.com/ansible/ansible.git@devel
Toxを使用したテスト
単体テストは、コミット、プルリクエスト、リリースごとに、また定期的に実施されます。
問題を見つけた場合は、GitHub に登録してください。
テストは Tox と Molecule を使用して行います:
Tox は複数のAnsibleバージョンをテストします。Molecule は複数のディストリビューションをテストします。
デフォルトを使用してテストするには(インストールされたAnsibleバージョン、名前空間: tehtbl
、イメージ: ubuntu
、タグ: latest
):
molecule test
# 特定のイメージを選択するには:
IMAGE="ubuntu" molecule test
# 特定のイメージと特定のタグを選択するには:
IMAGE="debian" TAG="stable" tox
また、複数のAnsibleバージョンをテストし、正しいイメージを選択することもできます:
Toxを使用して複数のAnsibleバージョンをテストできます。デフォルトテスト(名前空間: tehtbl
、イメージ: ubuntu
、タグ: latest
)を実行するには:
tox
# Ubuntu(名前空間: `tehtbl`、タグ: `latest`)を実行するには
IMAGE="ubuntu" tox
# さらにカスタマイズするには:
IMAGE="debian" TAG="stable" tox -e py37-ansible-current
Vagrantを使用したテスト
vagrant
プラグインをインストールするには:
vagrant plugin install vagrant-reload
VirtualBox プロバイダーでテストを開始するには:
vagrant up
ライセンス
MITライセンス
著者情報
出典
この作業は多くの人々の素晴らしい作業に基づいています。例として Robert de Bock、Jeff Geerling、Thomas Waldmann に感謝します!