Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
T
tf_mod_aws_rds
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
steamhaus
tf_mod_aws_rds
Commits
5d4a0644
Commit
5d4a0644
authored
Aug 23, 2019
by
Danny
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add final snapshot identifier
parent
d7595ae4
Pipeline
#6508
passed with stage
in 19 seconds
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
56 additions
and
56 deletions
+56
-56
main.tf
main.tf
+56
-56
No files found.
main.tf
View file @
5d4a0644
...
...
@@ -2,6 +2,7 @@
# Variables
#############################################################################################################
variable
"vpc_id"
{}
variable
"security_groups"
{
type
=
"list"
}
...
...
@@ -21,12 +22,12 @@ variable "rds_engine_version" {
}
variable
"rds_tcp_port"
{
default
=
"3306"
default
=
"3306"
}
variable
"rds_allocated_storage"
{
description
=
"The allocated storage in GBs"
default
=
"100"
default
=
"100"
}
variable
"rds_storage_type"
{
...
...
@@ -65,7 +66,7 @@ variable "read_replica_count" {
}
variable
"parameter_group"
{
default
=
"default.mysql5.6"
default
=
"default.mysql5.6"
}
variable
"route53_zone"
{}
...
...
@@ -91,66 +92,65 @@ resource "aws_security_group" "rds" {
#############################################################################################################
resource
"aws_db_subnet_group"
"default"
{
name
=
"
${
var
.
rds_instance_name
}
-subnet"
description
=
"RDS Subnet group for
${
var
.
rds_instance_name
}
"
subnet_ids
=
[
"
${
var
.
subnet_ids
}
"
]
name
=
"
${
var
.
rds_instance_name
}
-subnet"
description
=
"RDS Subnet group for
${
var
.
rds_instance_name
}
"
subnet_ids
=
[
"
${
var
.
subnet_ids
}
"
]
}
#############################################################################################################
# RDS Instances
#############################################################################################################
resource
"aws_db_instance"
"default"
{
identifier
=
"
${
var
.
rds_instance_name
}
"
engine
=
"
${
var
.
rds_engine
}
"
engine_version
=
"
${
var
.
rds_engine_version
}
"
allocated_storage
=
"
${
var
.
rds_allocated_storage
}
"
storage_type
=
"
${
var
.
rds_storage_type
}
"
instance_class
=
"
${
var
.
rds_instance_class
}
"
identifier
=
"
${
var
.
rds_instance_name
}
"
engine
=
"
${
var
.
rds_engine
}
"
engine_version
=
"
${
var
.
rds_engine_version
}
"
username
=
"
${
var
.
rds_usernam
e
}
"
password
=
"
${
var
.
rds_password
}
"
allocated_storage
=
"
${
var
.
rds_allocated_storag
e
}
"
storage_type
=
"
${
var
.
rds_storage_type
}
"
multi_az
=
"
${
var
.
rds_multi_az
}
"
publicly_accessible
=
"
${
var
.
rds_publicly_accessible
}
"
vpc_security_group_ids
=
[
"
${
aws_security_group
.
rds
.
id
}
"
]
db_subnet_group_name
=
"
${
aws_db_subnet_group
.
default
.
name
}
"
instance_class
=
"
${
var
.
rds_instance_class
}
"
parameter_group_name
=
"
${
var
.
parameter_group
}
"
username
=
"
${
var
.
rds_username
}
"
password
=
"
${
var
.
rds_password
}
"
backup_retention_period
=
"
${
var
.
backup_retention_period
}
"
backup_window
=
"
${
var
.
backup_window
}
"
maintenance_window
=
"
${
var
.
maintenance_window
}
"
multi_az
=
"
${
var
.
rds_multi_az
}
"
publicly_accessible
=
"
${
var
.
rds_publicly_accessible
}
"
vpc_security_group_ids
=
[
"
${
aws_security_group
.
rds
.
id
}
"
]
db_subnet_group_name
=
"
${
aws_db_subnet_group
.
default
.
name
}
"
parameter_group_name
=
"
${
var
.
parameter_group
}
"
final_snapshot_identifier
=
"final-snapshot-terraform"
backup_retention_period
=
"
${
var
.
backup_retention_period
}
"
backup_window
=
"
${
var
.
backup_window
}
"
maintenance_window
=
"
${
var
.
maintenance_window
}
"
}
resource
"aws_db_instance"
"read_replica"
{
identifier
=
"
${
var
.
rds_instance_name
}
-read-replica"
engine
=
"
${
var
.
rds_engine
}
"
engine_version
=
"
${
var
.
rds_engine_version
}
"
identifier
=
"
${
var
.
rds_instance_name
}
-read-replica"
engine
=
"
${
var
.
rds_engine
}
"
engine_version
=
"
${
var
.
rds_engine_version
}
"
allocated_storage
=
"
${
var
.
rds_allocated_storage
}
"
storage_type
=
"
${
var
.
rds_storage_type
}
"
allocated_storage
=
"
${
var
.
rds_allocated_storage
}
"
storage_type
=
"
${
var
.
rds_storage_type
}
"
instance_class
=
"
${
var
.
rds_instance_class
}
"
instance_class
=
"
${
var
.
rds_instance_class
}
"
username
=
"
${
var
.
rds_username
}
"
password
=
"
${
var
.
rds_password
}
"
username
=
"
${
var
.
rds_username
}
"
password
=
"
${
var
.
rds_password
}
"
multi_az
=
"
${
var
.
rds_multi_az
}
"
publicly_accessible
=
"
${
var
.
rds_publicly_accessible
}
"
vpc_security_group_ids
=
[
"
${
aws_security_group
.
rds
.
id
}
"
]
db_subnet_group_name
=
"
${
aws_db_subnet_group
.
default
.
name
}
"
multi_az
=
"
${
var
.
rds_multi_az
}
"
publicly_accessible
=
"
${
var
.
rds_publicly_accessible
}
"
vpc_security_group_ids
=
[
"
${
aws_security_group
.
rds
.
id
}
"
]
db_subnet_group_name
=
"
${
aws_db_subnet_group
.
default
.
name
}
"
parameter_group_name
=
"
${
var
.
parameter_group
}
"
parameter_group_name
=
"
${
var
.
parameter_group
}
"
backup_retention_period
=
"
${
var
.
backup_retention_period
}
"
backup_window
=
"
${
var
.
backup_window
}
"
maintenance_window
=
"
${
var
.
maintenance_window
}
"
replicate_source_db
=
"
${
aws_db_instance
.
default
.
name
}
"
count
=
"
${
var
.
read_replica_count
}
"
replicate_source_db
=
"
${
aws_db_instance
.
default
.
name
}
"
count
=
"
${
var
.
read_replica_count
}
"
}
#############################################################################################################
...
...
@@ -158,42 +158,42 @@ resource "aws_db_instance" "read_replica" {
#############################################################################################################
resource
"aws_route53_record"
"private_rds_default"
{
zone_id
=
"
${
var
.
route53_zone
}
"
name
=
"
${
var
.
rds_engine
}
.
${
var
.
rds_instance_name
}
.aws"
type
=
"CNAME"
ttl
=
"60"
records
=
[
"
${
aws_db_instance
.
default
.
address
}
"
]
count
=
"
${
length
(
split
(
","
,
"var.route53_zone"
))
}
"
zone_id
=
"
${
var
.
route53_zone
}
"
name
=
"
${
var
.
rds_engine
}
.
${
var
.
rds_instance_name
}
.aws"
type
=
"CNAME"
ttl
=
"60"
records
=
[
"
${
aws_db_instance
.
default
.
address
}
"
]
count
=
"
${
length
(
split
(
","
,
"var.route53_zone"
))
}
"
}
resource
"aws_route53_record"
"private_rds_read-replica"
{
zone_id
=
"
${
var
.
route53_zone
}
"
name
=
"readonly-
${
var
.
rds_engine
}
.
${
var
.
rds_instance_name
}
.aws"
type
=
"CNAME"
ttl
=
"60"
records
=
[
"
${
aws_db_instance
.
read_replica
.
address
}
"
]
count
=
"
${
length
(
split
(
","
,
"var.route53_zone"
))
*
var
.
read_replica_count
}
"
zone_id
=
"
${
var
.
route53_zone
}
"
name
=
"readonly-
${
var
.
rds_engine
}
.
${
var
.
rds_instance_name
}
.aws"
type
=
"CNAME"
ttl
=
"60"
records
=
[
"
${
aws_db_instance
.
read_replica
.
address
}
"
]
count
=
"
${
length
(
split
(
","
,
"var.route53_zone"
))
*
var
.
read_replica_count
}
"
}
#############################################################################################################
# Outputs
#############################################################################################################
output
"rds_instance_id"
{
value
=
"
${
aws_db_instance
.
default
.
id
}
"
value
=
"
${
aws_db_instance
.
default
.
id
}
"
}
output
"rds_instance_address"
{
value
=
"
${
aws_db_instance
.
default
.
address
}
"
value
=
"
${
aws_db_instance
.
default
.
address
}
"
}
output
"read_replica_rds_instance_id"
{
value
=
"
${
var
.
read_replica_count
==
"0"
?
"null"
:
element
(
concat
(
aws_db_instance
.
read_replica
.
*
.
id
,
list
(
""
)),
0
)
}
"
value
=
"
${
var
.
read_replica_count
==
"0"
?
"null"
:
element
(
concat
(
aws_db_instance
.
read_replica
.
*
.
id
,
list
(
""
)),
0
)
}
"
}
output
"read_replica_rds_instance_address"
{
value
=
"
${
var
.
read_replica_count
==
"0"
?
"null"
:
element
(
concat
(
aws_db_instance
.
read_replica
.
*
.
address
,
list
(
""
)),
0
)
}
"
value
=
"
${
var
.
read_replica_count
==
"0"
?
"null"
:
element
(
concat
(
aws_db_instance
.
read_replica
.
*
.
address
,
list
(
""
)),
0
)
}
"
}
output
"subnet_group_id"
{
value
=
"
${
aws_db_subnet_group
.
default
.
id
}
"
value
=
"
${
aws_db_subnet_group
.
default
.
id
}
"
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment