-
Notifications
You must be signed in to change notification settings - Fork 25
Expand file tree
/
Copy pathec2.tf
More file actions
33 lines (31 loc) · 1.08 KB
/
ec2.tf
File metadata and controls
33 lines (31 loc) · 1.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# resource block
resource "aws_instance" "jenkins" {
ami = data.aws_ami.al2.id
instance_type = "t2.small"
security_groups = [aws_security_group.web_traffic.name]
key_name = "<your keypair name here>"
provisioner "remote-exec" {
inline = [
"sudo yum upgrade -y",
"sudo yum install -y wget git" ,
"sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo",
"sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key",
"sudo yum install -y jenkins java-11-amazon-corretto",
"sudo amazon-linux-extras install -y docker",
"sudo systemctl enable docker.service",
"sudo usermod -a -G docker jenkins",
"sudo systemctl restart docker.service",
"sudo service jenkins start",
"sudo cat /var/lib/jenkins/secrets/initialAdminPassword"
]
}
connection {
type = "ssh"
host = self.public_ip
user = "ec2-user"
private_key = file("mykey.pem" ) # <your keypair name here>
}
tags = {
"Name" = "Jenkins"
}
}