diff --git a/modules/ami-housekeeper/outputs.tf b/modules/ami-housekeeper/outputs.tf index 8fcd7f4e5e..a368c22107 100644 --- a/modules/ami-housekeeper/outputs.tf +++ b/modules/ami-housekeeper/outputs.tf @@ -6,6 +6,24 @@ output "lambda_log_group" { value = aws_cloudwatch_log_group.ami_housekeeper } +# List all non-deprecated role attributes instead of the whole resource to avoid +# "Value derived from a deprecated source" warnings. Only the deprecated +# `managed_policy_arns` and `inline_policy` are omitted. output "lambda_role" { - value = aws_iam_role.ami_housekeeper + value = { + arn = aws_iam_role.ami_housekeeper.arn + assume_role_policy = aws_iam_role.ami_housekeeper.assume_role_policy + create_date = aws_iam_role.ami_housekeeper.create_date + description = aws_iam_role.ami_housekeeper.description + force_detach_policies = aws_iam_role.ami_housekeeper.force_detach_policies + id = aws_iam_role.ami_housekeeper.id + max_session_duration = aws_iam_role.ami_housekeeper.max_session_duration + name = aws_iam_role.ami_housekeeper.name + name_prefix = aws_iam_role.ami_housekeeper.name_prefix + path = aws_iam_role.ami_housekeeper.path + permissions_boundary = aws_iam_role.ami_housekeeper.permissions_boundary + tags = aws_iam_role.ami_housekeeper.tags + tags_all = aws_iam_role.ami_housekeeper.tags_all + unique_id = aws_iam_role.ami_housekeeper.unique_id + } } diff --git a/modules/lambda/outputs.tf b/modules/lambda/outputs.tf index a4704e66f9..021c60d69b 100644 --- a/modules/lambda/outputs.tf +++ b/modules/lambda/outputs.tf @@ -2,6 +2,24 @@ output "lambda" { value = { function = aws_lambda_function.main log_group = aws_cloudwatch_log_group.main - role = aws_iam_role.main + # List all non-deprecated role attributes instead of the whole resource to + # avoid "Value derived from a deprecated source" warnings. Only the deprecated + # `managed_policy_arns` and `inline_policy` are omitted. + role = { + arn = aws_iam_role.main.arn + assume_role_policy = aws_iam_role.main.assume_role_policy + create_date = aws_iam_role.main.create_date + description = aws_iam_role.main.description + force_detach_policies = aws_iam_role.main.force_detach_policies + id = aws_iam_role.main.id + max_session_duration = aws_iam_role.main.max_session_duration + name = aws_iam_role.main.name + name_prefix = aws_iam_role.main.name_prefix + path = aws_iam_role.main.path + permissions_boundary = aws_iam_role.main.permissions_boundary + tags = aws_iam_role.main.tags + tags_all = aws_iam_role.main.tags_all + unique_id = aws_iam_role.main.unique_id + } } } diff --git a/modules/runner-binaries-syncer/outputs.tf b/modules/runner-binaries-syncer/outputs.tf index 09dd0ad58f..10d934f932 100644 --- a/modules/runner-binaries-syncer/outputs.tf +++ b/modules/runner-binaries-syncer/outputs.tf @@ -1,5 +1,26 @@ +# List all non-deprecated bucket attributes instead of the whole resource to avoid +# "Value derived from a deprecated source" warnings. Only the deprecated +# `acceleration_status`, `acl`, `policy`, `request_payer`, `website_domain`, +# `website_endpoint` and the deprecated nested blocks (`cors_rule`, `grant`, +# `lifecycle_rule`, `logging`, `object_lock_configuration`, +# `replication_configuration`, `server_side_encryption_configuration`, +# `versioning`, `website`) are omitted. output "bucket" { - value = aws_s3_bucket.action_dist + value = { + arn = aws_s3_bucket.action_dist.arn + bucket = aws_s3_bucket.action_dist.bucket + bucket_domain_name = aws_s3_bucket.action_dist.bucket_domain_name + bucket_prefix = aws_s3_bucket.action_dist.bucket_prefix + bucket_region = aws_s3_bucket.action_dist.bucket_region + bucket_regional_domain_name = aws_s3_bucket.action_dist.bucket_regional_domain_name + force_destroy = aws_s3_bucket.action_dist.force_destroy + hosted_zone_id = aws_s3_bucket.action_dist.hosted_zone_id + id = aws_s3_bucket.action_dist.id + object_lock_enabled = aws_s3_bucket.action_dist.object_lock_enabled + region = aws_s3_bucket.action_dist.region + tags = aws_s3_bucket.action_dist.tags + tags_all = aws_s3_bucket.action_dist.tags_all + } } output "runner_distribution_object_key" { @@ -14,6 +35,24 @@ output "lambda_log_group" { value = aws_cloudwatch_log_group.syncer } +# List all non-deprecated role attributes instead of the whole resource to avoid +# "Value derived from a deprecated source" warnings. Only the deprecated +# `managed_policy_arns` and `inline_policy` are omitted. output "lambda_role" { - value = aws_iam_role.syncer_lambda + value = { + arn = aws_iam_role.syncer_lambda.arn + assume_role_policy = aws_iam_role.syncer_lambda.assume_role_policy + create_date = aws_iam_role.syncer_lambda.create_date + description = aws_iam_role.syncer_lambda.description + force_detach_policies = aws_iam_role.syncer_lambda.force_detach_policies + id = aws_iam_role.syncer_lambda.id + max_session_duration = aws_iam_role.syncer_lambda.max_session_duration + name = aws_iam_role.syncer_lambda.name + name_prefix = aws_iam_role.syncer_lambda.name_prefix + path = aws_iam_role.syncer_lambda.path + permissions_boundary = aws_iam_role.syncer_lambda.permissions_boundary + tags = aws_iam_role.syncer_lambda.tags + tags_all = aws_iam_role.syncer_lambda.tags_all + unique_id = aws_iam_role.syncer_lambda.unique_id + } } diff --git a/modules/runners/outputs.tf b/modules/runners/outputs.tf index 8f366dce90..c2286c2241 100644 --- a/modules/runners/outputs.tf +++ b/modules/runners/outputs.tf @@ -2,8 +2,26 @@ output "launch_template" { value = aws_launch_template.runner } +# Role outputs list all non-deprecated attributes instead of the whole resource +# to avoid "Value derived from a deprecated source" warnings. Only the deprecated +# `managed_policy_arns` and `inline_policy` are omitted. output "role_runner" { - value = aws_iam_role.runner + value = [for role in aws_iam_role.runner : { + arn = role.arn + assume_role_policy = role.assume_role_policy + create_date = role.create_date + description = role.description + force_detach_policies = role.force_detach_policies + id = role.id + max_session_duration = role.max_session_duration + name = role.name + name_prefix = role.name_prefix + path = role.path + permissions_boundary = role.permissions_boundary + tags = role.tags + tags_all = role.tags_all + unique_id = role.unique_id + }] } output "lambda_scale_up" { @@ -15,7 +33,22 @@ output "lambda_scale_up_log_group" { } output "role_scale_up" { - value = aws_iam_role.scale_up + value = { + arn = aws_iam_role.scale_up.arn + assume_role_policy = aws_iam_role.scale_up.assume_role_policy + create_date = aws_iam_role.scale_up.create_date + description = aws_iam_role.scale_up.description + force_detach_policies = aws_iam_role.scale_up.force_detach_policies + id = aws_iam_role.scale_up.id + max_session_duration = aws_iam_role.scale_up.max_session_duration + name = aws_iam_role.scale_up.name + name_prefix = aws_iam_role.scale_up.name_prefix + path = aws_iam_role.scale_up.path + permissions_boundary = aws_iam_role.scale_up.permissions_boundary + tags = aws_iam_role.scale_up.tags + tags_all = aws_iam_role.scale_up.tags_all + unique_id = aws_iam_role.scale_up.unique_id + } } output "lambda_scale_down" { @@ -27,7 +60,22 @@ output "lambda_scale_down_log_group" { } output "role_scale_down" { - value = aws_iam_role.scale_down + value = { + arn = aws_iam_role.scale_down.arn + assume_role_policy = aws_iam_role.scale_down.assume_role_policy + create_date = aws_iam_role.scale_down.create_date + description = aws_iam_role.scale_down.description + force_detach_policies = aws_iam_role.scale_down.force_detach_policies + id = aws_iam_role.scale_down.id + max_session_duration = aws_iam_role.scale_down.max_session_duration + name = aws_iam_role.scale_down.name + name_prefix = aws_iam_role.scale_down.name_prefix + path = aws_iam_role.scale_down.path + permissions_boundary = aws_iam_role.scale_down.permissions_boundary + tags = aws_iam_role.scale_down.tags + tags_all = aws_iam_role.scale_down.tags_all + unique_id = aws_iam_role.scale_down.unique_id + } } output "lambda_pool" { diff --git a/modules/runners/pool/outputs.tf b/modules/runners/pool/outputs.tf index 7a4d70ca9f..531610b751 100644 --- a/modules/runners/pool/outputs.tf +++ b/modules/runners/pool/outputs.tf @@ -1,5 +1,23 @@ +# List all non-deprecated role attributes instead of the whole resource to avoid +# "Value derived from a deprecated source" warnings. Only the deprecated +# `managed_policy_arns` and `inline_policy` are omitted. output "role_pool" { - value = aws_iam_role.pool + value = { + arn = aws_iam_role.pool.arn + assume_role_policy = aws_iam_role.pool.assume_role_policy + create_date = aws_iam_role.pool.create_date + description = aws_iam_role.pool.description + force_detach_policies = aws_iam_role.pool.force_detach_policies + id = aws_iam_role.pool.id + max_session_duration = aws_iam_role.pool.max_session_duration + name = aws_iam_role.pool.name + name_prefix = aws_iam_role.pool.name_prefix + path = aws_iam_role.pool.path + permissions_boundary = aws_iam_role.pool.permissions_boundary + tags = aws_iam_role.pool.tags + tags_all = aws_iam_role.pool.tags_all + unique_id = aws_iam_role.pool.unique_id + } } output "lambda" { diff --git a/modules/webhook/direct/outputs.tf b/modules/webhook/direct/outputs.tf index 891821c727..d423786741 100644 --- a/modules/webhook/direct/outputs.tf +++ b/modules/webhook/direct/outputs.tf @@ -7,6 +7,24 @@ output "webhook" { value = { lambda = aws_lambda_function.webhook log_group = aws_cloudwatch_log_group.webhook - role = aws_iam_role.webhook_lambda + # List all non-deprecated role attributes instead of the whole resource to + # avoid "Value derived from a deprecated source" warnings. Only the deprecated + # `managed_policy_arns` and `inline_policy` are omitted. + role = { + arn = aws_iam_role.webhook_lambda.arn + assume_role_policy = aws_iam_role.webhook_lambda.assume_role_policy + create_date = aws_iam_role.webhook_lambda.create_date + description = aws_iam_role.webhook_lambda.description + force_detach_policies = aws_iam_role.webhook_lambda.force_detach_policies + id = aws_iam_role.webhook_lambda.id + max_session_duration = aws_iam_role.webhook_lambda.max_session_duration + name = aws_iam_role.webhook_lambda.name + name_prefix = aws_iam_role.webhook_lambda.name_prefix + path = aws_iam_role.webhook_lambda.path + permissions_boundary = aws_iam_role.webhook_lambda.permissions_boundary + tags = aws_iam_role.webhook_lambda.tags + tags_all = aws_iam_role.webhook_lambda.tags_all + unique_id = aws_iam_role.webhook_lambda.unique_id + } } } diff --git a/modules/webhook/eventbridge/outputs.tf b/modules/webhook/eventbridge/outputs.tf index 3f7c4fde1d..bc863ce296 100644 --- a/modules/webhook/eventbridge/outputs.tf +++ b/modules/webhook/eventbridge/outputs.tf @@ -9,7 +9,25 @@ output "webhook" { value = { lambda = aws_lambda_function.webhook log_group = aws_cloudwatch_log_group.webhook - role = aws_iam_role.webhook_lambda + # List all non-deprecated role attributes instead of the whole resource to + # avoid "Value derived from a deprecated source" warnings. Only the deprecated + # `managed_policy_arns` and `inline_policy` are omitted. + role = { + arn = aws_iam_role.webhook_lambda.arn + assume_role_policy = aws_iam_role.webhook_lambda.assume_role_policy + create_date = aws_iam_role.webhook_lambda.create_date + description = aws_iam_role.webhook_lambda.description + force_detach_policies = aws_iam_role.webhook_lambda.force_detach_policies + id = aws_iam_role.webhook_lambda.id + max_session_duration = aws_iam_role.webhook_lambda.max_session_duration + name = aws_iam_role.webhook_lambda.name + name_prefix = aws_iam_role.webhook_lambda.name_prefix + path = aws_iam_role.webhook_lambda.path + permissions_boundary = aws_iam_role.webhook_lambda.permissions_boundary + tags = aws_iam_role.webhook_lambda.tags + tags_all = aws_iam_role.webhook_lambda.tags_all + unique_id = aws_iam_role.webhook_lambda.unique_id + } } } @@ -17,6 +35,21 @@ output "dispatcher" { value = { lambda = aws_lambda_function.dispatcher log_group = aws_cloudwatch_log_group.dispatcher - role = aws_iam_role.dispatcher_lambda + role = { + arn = aws_iam_role.dispatcher_lambda.arn + assume_role_policy = aws_iam_role.dispatcher_lambda.assume_role_policy + create_date = aws_iam_role.dispatcher_lambda.create_date + description = aws_iam_role.dispatcher_lambda.description + force_detach_policies = aws_iam_role.dispatcher_lambda.force_detach_policies + id = aws_iam_role.dispatcher_lambda.id + max_session_duration = aws_iam_role.dispatcher_lambda.max_session_duration + name = aws_iam_role.dispatcher_lambda.name + name_prefix = aws_iam_role.dispatcher_lambda.name_prefix + path = aws_iam_role.dispatcher_lambda.path + permissions_boundary = aws_iam_role.dispatcher_lambda.permissions_boundary + tags = aws_iam_role.dispatcher_lambda.tags + tags_all = aws_iam_role.dispatcher_lambda.tags_all + unique_id = aws_iam_role.dispatcher_lambda.unique_id + } } }