output "api_url" { description = "HTTP API endpoint URL." value = aws_apigatewayv2_api.order_api.api_endpoint } output "form_url" { description = "Public order form URL." value = local.form_url } output "distribution_id" { description = "CloudFront distribution ID, for cache invalidation." value = aws_cloudfront_distribution.form.id } output "distribution_domain_name" { description = "CloudFront distribution domain name, the DNS target for the custom domain." value = aws_cloudfront_distribution.form.domain_name } output "form_bucket_name" { description = "S3 bucket holding the order form HTML." value = aws_s3_bucket.form.id } output "reports_bucket_name" { description = "S3 bucket holding payroll CSVs and weekly summary PDFs." value = aws_s3_bucket.reports.id } output "artifacts_bucket_name" { description = "S3 bucket holding Lambda deployment packages." value = aws_s3_bucket.artifacts.id } output "orders_table_name" { description = "DynamoDB orders table." value = aws_dynamodb_table.orders.name } output "weekly_menu_role_arn" { description = "OIDC role ARN for .github/workflows/weekly-menu.yml (repo secret AWS_WEEKLY_MENU_ROLE_ARN)." value = aws_iam_role.weekly_menu.arn } output "shared_layer_arn" { description = "Version ARN of the shared Lambda layer." value = aws_lambda_layer_version.shared.arn } output "function_arns" { description = "ARNs of every Lambda function in this configuration." value = { admin_authorizer = aws_lambda_function.admin_authorizer.arn aggregate_orders = aws_lambda_function.aggregate_orders.arn close_form = aws_lambda_function.close_form.arn slack_notifier = aws_lambda_function.slack_notifier.arn submit_order = aws_lambda_function.submit_order.arn sync_roster = aws_lambda_function.sync_roster.arn } }