tehtbl.update
ロールの説明
システムに更新をインストールします。
例のプレイブック
この例は molecule/default/converge.yml
から取得されており、プッシュ、プルリクエスト、およびリリースのたびにテストされています。
---
- name: 統合
hosts: all
become: true
gather_facts: false
roles:
- role: tehtbl.update
このプレイブックを使用して、ロールが機能するために必要なすべての準備を整えます。
---
- name: 準備
hosts: all
become: true
gather_facts: false
roles:
- tehtbl.bootstrap
ロールの変数
これらの変数は defaults/main.yml
に設定されています:
---
# ------------------------------------------------------------------------
# 更新用のデフォルトファイル
# ------------------------------------------------------------------------
# APT (Debian/Ubuntu) のみ: `build-dep`を除くすべてのモジュール状態で、未使用の依存パッケージを削除
update_autoremove: false
# APT (Debian/Ubuntu) のみ: apt_upgradeタイプは、dist, full, yes, safeのいずれか
update_upgrade_command: safe
# APT (Debian/Ubuntu) のみ: aptキャッシュがcache_valid_timeより古い場合、キャッシュを更新。秒単位で設定。
update_cache_valid_time: 7200
# システムを更新する際、再起動が必要な場合があります。ここで選択できます:
# "yes": パッケージが変更された場合、常に再起動。
# "no": パッケージが変更された場合、決して再起動しない。
update_reboot: true
要件
- パッケージを含むリポジトリへのアクセス(インターネット上にある可能性があります)。
- 最新のAnsibleバージョン。(テストは、Ansibleの現在のリリース、前のリリース、次のリリースで実行されます。)
すべての要件が満たされるように、次のロールをインストールできます。ansible-galaxy install -r requirements.yml
を使用:
- tehtbl.reboot
コンテキスト
このロールは、多くの互換性のあるロールの一部です。詳細については、私の他のロールをご覧ください。
互換性
このロールは、次の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。ありがとうございます!