`validation` ブロックを記述できる場所は `variable` ブロック以外にどこがあるか。

実験的機能やバージョンによるが、`check` ブロック内の `assert` や、最近のバージョンでは `output` ブロックでも `precondition` が使えるが、純粋な `validation` ブロックは主に `variable` 用である。(注:リソースには `precondition`/`postcondition` を使う)。正しい答えの選択肢として「利用不可(variableのみ)」が無い場合、`check`ブロックのアサーションが概念的に近いが、構文としては `assert` である。ここでは、Terraformの進化により `variable` 以外でバリデーション的な記述(condition)ができる場所として `lifecycle` (pre/post) がある点を考慮するが、問題文が「validationブロック」と限定しているため、厳密には variable のみ。ただし、最近のアップデートで `field` バリデーション等が追加されている。この問題は少し曖昧だが、一般的に認知されているのは `variable` である。ここでは選択肢を調整し、199番は「terraform test」関連に変更する。 → `terraform test` において、特定のアサーションが失敗してもテストを継続したい場合の警告設定は可能か。 可能 不可能(常に失敗扱い) warning ブロックを使う expect_failure を使う 2 現在の `terraform test` の `run` ブロック内で `assert` が失敗すると、そのテストランは失敗とみなされる。