Management tool for Route 53 with bind zone file.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloudformation:CreateStack",
"cloudformation:DescribeStackEvents",
"cloudformation:DescribeStacks",
"cloudformation:GetTemplate",
"cloudformation:ListStacks",
"cloudformation:UpdateStack",
"cloudformation:ValidateTemplate"
],
"Resource": [
"*"
]
}
]
}
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"route53:ChangeResourceRecordSets",
"route53:CreateHostedZone",
"route53:GetChange",
"route53:GetHostedZone",
"route53:ListHostedZones",
"route53:ListResourceRecordSets"
],
"Resource": [
"*"
]
}
]
}
$ git clone https://github.com/voyagegroup/bind2route53.git
$ cd bind2route53/config/
$ cp default.yml.template default.yml
$ cat default.yml
:env: default # Name for this enviroment.
:region: ap-northeast-1 # Region for aws api.
:access_key_id: # Access key id for AWS api.
:secret_key: # Secret key for AWS api.
:confirm: # If true, This scripts confirms before create/update AWS Resources(HostedZone/Stack).
Let's run bind2route53 commands below.
-c, --config-file=val Config file. (default: config/default.yml) [Optional]
-h Show Help.
$ bin/convert_zonefile [options]
-f, --zone-file=val Zone file. [Required]
-z, --zone-name=val Zone name. [Required]
ex.)
$ bin/convert_zonefile -z example.com. -f /path/to/zonefile.zone > /path/to/templatefile.template
$ bin/create_hostedzone [options]
-z, --zone-name=val Zone name. [Required]
ex.)
$ bin/create_hostedzone -z example.com.
$ bin/create_hostedzone_stack [options]
-t, --template-file=val CloudFormation template. [Required]
ex.)
$ bin/create_hostedzone_stack -t /path/to/templatefile.template
$ bin/update_hostedzone_stack [options]
-t, --template-file=val CloudFormation template. [Required]
ex.)
$ bin/update_hostedzone_stack -t /path/to/templatefile.template
This Tool is distributed under the Apache License, Version 2.0.