モジュール内リソースの参照値は必ずoutputで公開し依存関係を明示する
ルール
Always expose reference values for resources within modules through outputs to make dependencies explicit
(モジュール内リソースの参照値は必ずoutputで公開し、依存関係を明示する)
解説
あるモジュール内で作成されたリソースの値を他のモジュールやリソースで使用する際は、outputブロックを通じて利用させます。 言い方を変えると、dataブロックやARNのハードコーディングを用いるコーディングは、保守性を落とすため避けるべきです。
サンプルコード
# outputで参照値を明示的に公開
# modules/networking/outputs.tf
output "vpc_id" {
description = "The ID of the VPC"
value = aws_vpc.main.id
}
参考リンク
Show Text to Shareモジュール内リソースの参照値は必ずoutputで公開し依存関係を明示する https://www.tricrow.com/infrastructure/development-guidline/module_design.output_dependency.html

