tehtbl.bootstrap
ロールの説明
Ansibleのために、DebianおよびUbuntuシステムを準備します。
例のプレイブック
この例は molecule/default/converge.yml
から取得され、各プッシュ、プルリクエスト、およびリリースでテストされています。
---
- name: Converge
hosts: all
become: true
gather_facts: false
roles:
- role: tehtbl.bootstrap
このロールを実行するマシンには準備が必要です。このプレイブックは、ロールが正常に機能するために必要なものがすべて揃っているかを確認するために使用します。
---
- name: Prepare
hosts: all
become: true
gather_facts: false
ロール変数
これらの変数は defaults/main.yml
に設定されています:
---
# ------------------------------------------------------------------------
# bootstrapのデフォルトファイル
# ------------------------------------------------------------------------
# マシンに接続するために使用するユーザー。
bootstrap_user: root
# "プレビュー"としてマークされたモジュールをサポートするためにインストールされるソフトウェア(例: mysql_db)。
# "yes", "no" または unset が有効です。
bootstrap_preview: true
# ホストが利用可能になるまで待ちますか?
bootstrap_wait_for_host: false
# 接続テストで失敗するまでの待機秒数。
bootstrap_timeout: 3
# インストール中のリトライ回数
bootstrap_retries: 3
要求事項
- インターネット上にあるパッケージを含むリポジトリへのアクセス。
- 最新のAnsibleバージョン。(現在の、前の、次のAnsibleリリースでテストが実行されます。)
コンテキスト
このロールは多くの互換性のあるロールの一部です。さらに情報が必要な場合は、他のロールをご覧ください。
互換性
このロールは以下のDockerイメージでテストされています:
コンテナ | タグ | 失敗の許可 |
---|---|---|
debian | stable | no |
debian | testing | no |
debian | unstable | yes |
ubuntu | xenial | yes |
ubuntu | bionic | no |
ubuntu | focal | no |
ubuntu | devel | yes |
このロールは以下のAnsibleバージョンでテストされています:
- ansible>=2.8, <2.9
- ansible>=2.9
- git+https://github.com/ansible/ansible.git@devel
Toxを使用したテスト
ユニットテストは、各コミット、プルリクエスト、リリースでおよび定期的に実行されます。
問題が見つかった場合は、GitHubに登録してください。
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。ありがとうございます!