feat: setup AWS infrastructure directory and checklist
This commit is contained in:
@@ -0,0 +1,98 @@
|
||||
# Outputs for Syslog Solution LLC AWS Organization Terraform configuration
|
||||
|
||||
output "organization_id" {
|
||||
description = "AWS Organization ID"
|
||||
value = aws_organizations_organization.syslog.id
|
||||
}
|
||||
|
||||
output "organization_arn" {
|
||||
description = "AWS Organization ARN"
|
||||
value = aws_organizations_organization.syslog.arn
|
||||
}
|
||||
|
||||
output "master_account_id" {
|
||||
description = "Master account ID"
|
||||
value = data.aws_organizations_organization.syslog.master_account_id
|
||||
}
|
||||
|
||||
output "master_account_email" {
|
||||
description = "Master account email"
|
||||
value = data.aws_organizations_organization.syslog.master_account_email
|
||||
}
|
||||
|
||||
output "root_id" {
|
||||
description = "Root organizational unit ID"
|
||||
value = data.aws_organizations_organization.syslog.roots[0].id
|
||||
}
|
||||
|
||||
output "organizational_units" {
|
||||
description = "Map of organizational unit names to IDs"
|
||||
value = {
|
||||
management = aws_organizations_organizational_unit.management.id
|
||||
security = aws_organizations_organizational_unit.security.id
|
||||
workloads = aws_organizations_organizational_unit.workloads.id
|
||||
sandbox = aws_organizations_organizational_unit.sandbox.id
|
||||
}
|
||||
}
|
||||
|
||||
output "member_accounts" {
|
||||
description = "Map of member account names to IDs"
|
||||
value = {
|
||||
development = aws_organizations_account.development.id
|
||||
staging = aws_organizations_account.staging.id
|
||||
}
|
||||
}
|
||||
|
||||
output "member_account_emails" {
|
||||
description = "Map of member account names to emails"
|
||||
value = {
|
||||
development = aws_organizations_account.development.email
|
||||
staging = aws_organizations_account.staging.email
|
||||
}
|
||||
}
|
||||
|
||||
output "iam_users" {
|
||||
description = "Map of IAM user names to ARNs"
|
||||
value = {
|
||||
syslog_admin = aws_iam_user.syslog_admin.arn
|
||||
syslog_developer = aws_iam_user.syslog_developer.arn
|
||||
syslog_cicd = aws_iam_user.syslog_cicd.arn
|
||||
}
|
||||
}
|
||||
|
||||
output "iam_groups" {
|
||||
description = "Map of IAM group names to ARNs"
|
||||
value = {
|
||||
syslog_admins = aws_iam_group.syslog_admins.arn
|
||||
syslog_developers = aws_iam_group.syslog_developers.arn
|
||||
}
|
||||
}
|
||||
|
||||
output "sns_topic_arn" {
|
||||
description = "SNS topic ARN for billing alerts"
|
||||
value = aws_sns_topic.billing_alerts.arn
|
||||
}
|
||||
|
||||
output "cloudwatch_alarm_arn" {
|
||||
description = "CloudWatch alarm ARN for billing monitoring"
|
||||
value = aws_cloudwatch_metric_alarm.monthly_spend.arn
|
||||
}
|
||||
|
||||
output "management_account_id" {
|
||||
description = "Current management account ID"
|
||||
value = data.aws_caller_identity.management.account_id
|
||||
}
|
||||
|
||||
output "next_steps" {
|
||||
description = "Next steps after Terraform apply"
|
||||
value = <<EOT
|
||||
Next steps:
|
||||
1. Check your email for AWS account creation emails (dev and staging accounts)
|
||||
2. Accept the invitations in each account
|
||||
3. Set up AWS IAM Identity Center (SSO) in the management account
|
||||
4. Configure AWS profiles for each account:
|
||||
- aws configure --profile syslog-dev
|
||||
- aws configure --profile syslog-staging
|
||||
5. Begin deploying resources to development account
|
||||
EOT
|
||||
}
|
||||
Reference in New Issue
Block a user