私は1つのホスト上でのみプレイブックを実行しています。Ansible:失敗したタスクからプレイブックを再実行
私の現在のタスク実行の流れは以下のとおりです。タスクのいずれかが、間に障害が発生したすべてのもの
3)最初から再実行をクリーンアップする場合は
1)実行中のタスク
2)。
これはあまり効率的ではありません。私は、非常にこのような流れを作成するために、我々はプレイブックを再実行する場合
1)タスク
2)タスクが失敗した実行..
3)、ansibleが失敗したタスクからタスクを実行する必要がありますしたいです。それは最初から再開すべきではありません。
私はそれを達成しようとしていましたが、タスクが失敗すると、 "--limit"でプレイブックを実行しようとしていましたが、次のエラーがスローされます。
[email protected]:/etc/ansible# ansible-playbook stack.yml --limit -vvvv
ERROR: provided hosts list is empty
[email protected]:/etc/ansible# cat /root/stack.retry
10.17.10.150
これは、このワークフローを達成するためにプレイブックを再実行する正しい方法ではありませんか。
に脚本を制限することです。それらが等冪である場合、最初から再実行する唯一の問題は時間です。 – smiller171
私はidempotent playbookを構築しようとしています。場所のほとんどは、私が "シェル"と "コマンド"モジュールを作っていますので、私は "create"引数の助けを借りています。 あなたが言及した問題は常に残っています。私が直面している別の問題は.. タスクが実行され、タスクが失敗した場合、タスクの出力はファイルに記録され、palybookの次の実行では、正常に実行されたタスクと失敗したタスクもスキップします。 – tgcloud