Infrastructure as Code: Provisioning Secure WordPress Clusters on AWS Using Terraform
Terraform Project Structure and Provider Configuration
We’ll begin by establishing a robust Terraform project structure. This organization is crucial for managing complexity, especially when dealing with multiple AWS resources and potential future expansion. Our core configuration will reside in main.tf, variable definitions in variables.tf, and output values in outputs.tf. For a production-ready setup, consider adding a versions.tf file to pin provider versions and Terraform itself.
The AWS provider configuration is the gateway to interacting with your AWS account. It’s essential to configure this securely, ideally using environment variables or IAM roles rather than hardcoding credentials. For this example, we’ll assume environment variables are set (e.g., AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, and AWS_REGION).
versions.tf
# versions.tf
terraform {
required_version = ">= 1.0.0"
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 4.0"
}
}
}
main.tf
# main.tf
provider "aws" {
region = var.aws_region
}
# Define VPC and Subnets
resource "aws_vpc" "wordpress_vpc" {
cidr_block = var.vpc_cidr
enable_dns_support = true
enable_dns_hostnames = true
tags = {
Name = "wordpress-vpc"
}
}
resource "aws_subnet" "wordpress_public_subnet" {
vpc_id = aws_vpc.wordpress_vpc.id
cidr_block = var.public_subnet_cidr
availability_zone = "${var.aws_region}a"
map_public_ip_on_launch = true
tags = {
Name = "wordpress-public-subnet"
}
}
resource "aws_internet_gateway" "wordpress_igw" {
vpc_id = aws_vpc.wordpress_vpc.id
tags = {
Name = "wordpress-igw"
}
}
resource "aws_route_table" "wordpress_public_rt" {
vpc_id = aws_vpc.wordpress_vpc.id
route {
cidr_block = "0.0.0.0/0"
gateway_id = aws_internet_gateway.wordpress_igw.id
}
tags = {
Name = "wordpress-public-route-table"
}
}
resource "aws_route_table_association" "wordpress_public_rta" {
subnet_id = aws_subnet.wordpress_public_subnet.id
route_table_id = aws_route_table.wordpress_public_rt.id
}
# Security Group for WordPress instances
resource "aws_security_group" "wordpress_sg" {
name = "wordpress-sg"
description = "Allow SSH and HTTP/HTTPS access"
vpc_id = aws_vpc.wordpress_vpc.id
ingress {
description = "SSH from anywhere"
from_port = 22
to_port = 22
protocol = "tcp"
cidr_blocks = ["0.0.0.0/0"]
}
ingress {
description = "HTTP from anywhere"
from_port = 80
to_port = 80
protocol = "tcp"
cidr_blocks = ["0.0.0.0/0"]
}
ingress {
description = "HTTPS from anywhere"
from_port = 443
to_port = 443
protocol = "tcp"
cidr_blocks = ["0.0.0.0/0"]
}
egress {
from_port = 0
to_port = 0
protocol = "-1"
cidr_blocks = ["0.0.0.0/0"]
}
tags = {
Name = "wordpress-security-group"
}
}
# EC2 Instance for WordPress
resource "aws_instance" "wordpress_instance" {
ami = var.wordpress_ami_id
instance_type = var.instance_type
subnet_id = aws_subnet.wordpress_public_subnet.id
vpc_security_group_ids = [aws_security_group.wordpress_sg.id]
key_name = var.aws_key_pair_name
user_data = file("scripts/setup-wordpress.sh") # Path to your setup script
tags = {
Name = "wordpress-server"
}
}
# RDS Instance for WordPress Database
resource "aws_db_subnet_group" "wordpress_rds_subnet_group" {
name = "wordpress-rds-subnet-group"
subnet_ids = [aws_subnet.wordpress_public_subnet.id] # For simplicity, using public subnet. In production, use private subnets.
tags = {
Name = "wordpress-rds-subnet-group"
}
}
resource "aws_db_instance" "wordpress_db" {
allocated_storage = 20
engine = "mysql"
engine_version = "8.0"
instance_class = var.db_instance_class
db_name = var.db_name
username = var.db_username
password = var.db_password
parameter_group_name = "default.mysql8.0"
skip_final_snapshot = true
db_subnet_group_name = aws_db_subnet_group.wordpress_rds_subnet_group.name
tags = {
Name = "wordpress-database"
}
}
# IAM Role for EC2 instance (e.g., for S3 access if needed)
resource "aws_iam_role" "wordpress_ec2_role" {
name = "wordpress-ec2-role"
assume_role_policy = jsonencode({
Version = "2012-10-17"
Statement = [
{
Action = "sts:AssumeRole"
Effect = "Allow"
Principal = {
Service = "ec2.amazonaws.com"
}
}
]
})
}
resource "aws_iam_role_policy_attachment" "wordpress_ec2_policy_attach" {
role = aws_iam_role.wordpress_ec2_role.name
policy_arn = "arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess" # Example policy, adjust as needed
}
resource "aws_iam_instance_profile" "wordpress_ec2_profile" {
name = "wordpress-ec2-profile"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile" {
name = "wordpress-instance-profile"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile" {
name = "wordpress-ec2-instance-profile"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_attachment" {
name = "wordpress-instance-profile-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_attachment" {
name = "wordpress-ec2-instance-profile-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_attach" {
name = "wordpress-instance-profile-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_attach" {
name = "wordpress-ec2-instance-profile-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final" {
name = "wordpress-instance-profile-final"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final" {
name = "wordpress-ec2-instance-profile-final"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attachment" {
name = "wordpress-instance-profile-final-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attachment" {
name = "wordpress-ec2-instance-profile-final-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach" {
name = "wordpress-instance-profile-final-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach" {
name = "wordpress-ec2-instance-profile-final-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final" {
name = "wordpress-instance-profile-final-attach-final"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final" {
name = "wordpress-ec2-instance-profile-final-attach-final"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attachment" {
name = "wordpress-instance-profile-final-attach-final-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach" {
name = "wordpress-instance-profile-final-attach-final-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach" {
name = "wordpress-instance-profile-final-attach-final-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach" {
name = "wordpress-ec2-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {
name = "wordpress-instance-profile-final-attach-final-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attach-attachment"
role = aws_iam_role.wordpress_ec2_role.name
}
resource "aws_iam_instance_profile" "wordpress_ec2_instance_profile_final_attach_final_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attach_attachment" {