Skip to content

Commit

Permalink
1. refactor
Browse files Browse the repository at this point in the history
2. add gcs(know issue with lifecycle)
3. add gcp firewall
4. add iam in progress

Change-Id: Ib721adc6a392bc7f6a3a7f097407a0d80da9f7d9
  • Loading branch information
sergeylanzman committed Nov 21, 2018
1 parent 750caef commit f630821
Show file tree
Hide file tree
Showing 21 changed files with 304 additions and 59 deletions.
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
.idea
generated
generated
vendor
terraform
4 changes: 2 additions & 2 deletions aws_terraforming/aws.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package awsTerraforming
import (
"log"
"os"
"waze/terraform/aws_terraforming/awsGenerator"
"waze/terraform/aws_terraforming/aws_generator"
"waze/terraform/aws_terraforming/elb"
"waze/terraform/aws_terraforming/iam"
"waze/terraform/aws_terraforming/igw"
Expand All @@ -24,7 +24,7 @@ func Generate(service, region string) {
os.MkdirAll(currentPath, os.ModePerm)
os.Chdir(currentPath)
defer os.Chdir(rootPath)
var generator awsGenerator.Generator
var generator aws_generator.Generator
switch service {
case "vpc":
generator = vpc.VpcGenerator{}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package awsGenerator
package aws_generator

type BasicGenerator struct{}

Expand Down
14 changes: 10 additions & 4 deletions aws_terraforming/elb/elb.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package elb

import (
"waze/terraform/aws_terraforming/awsGenerator"
"waze/terraform/aws_terraforming/aws_generator"
"waze/terraform/terraform_utils"

"github.com/aws/aws-sdk-go/aws"
Expand All @@ -23,7 +23,7 @@ var allowEmptyValues = map[string]bool{
}

type ElbGenerator struct {
awsGenerator.BasicGenerator
aws_generator.BasicGenerator
}

func (ElbGenerator) Generate(region string) error {
Expand All @@ -33,7 +33,13 @@ func (ElbGenerator) Generate(region string) error {
err := svc.DescribeLoadBalancersPages(&elb.DescribeLoadBalancersInput{}, func(loadBalancers *elb.DescribeLoadBalancersOutput, lastPage bool) bool {
for _, loadBalancer := range loadBalancers.LoadBalancerDescriptions {
resourceName := aws.StringValue(loadBalancer.LoadBalancerName)
resources = append(resources, terraform_utils.NewTerraformResource(aws.StringValue(loadBalancer.LoadBalancerName), resourceName, "aws_elb", "aws", nil))
resources = append(resources, terraform_utils.NewTerraformResource(
aws.StringValue(loadBalancer.LoadBalancerName),
resourceName,
"aws_elb",
"aws",
nil,
map[string]string{}))
}
return !lastPage
})
Expand All @@ -50,7 +56,7 @@ func (ElbGenerator) Generate(region string) error {
if err != nil {
return err
}
err = terraform_utils.GenerateTf(resources, "elb", region)
err = terraform_utils.GenerateTf(resources, "elb", region, "aws")
if err != nil {
return err
}
Expand Down
13 changes: 8 additions & 5 deletions aws_terraforming/iam/iam.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package iam

import (
"strings"
"waze/terraform/aws_terraforming/awsGenerator"
"waze/terraform/aws_terraforming/aws_generator"
"waze/terraform/terraform_utils"

"github.com/aws/aws-sdk-go/service/iam"
Expand All @@ -26,7 +26,7 @@ var allowEmptyValues = map[string]bool{
}

type IamGenerator struct {
awsGenerator.BasicGenerator
aws_generator.BasicGenerator
metadata map[string]terraform_utils.ResourceMetaData
resources []terraform_utils.TerraformResource
}
Expand All @@ -53,7 +53,7 @@ func (g IamGenerator) Generate(region string) error {
if err != nil {
return err
}
err = terraform_utils.GenerateTf(g.resources, "iam", region)
err = terraform_utils.GenerateTf(g.resources, "iam", region, "aws")
if err != nil {
return err
}
Expand All @@ -69,7 +69,8 @@ func (g *IamGenerator) getUsers(svc *iam.IAM) error {
aws.StringValue(user.UserId),
"aws_iam_user",
"aws",
nil))
nil,
map[string]string{}))
g.metadata[resourceName] = terraform_utils.ResourceMetaData{
Provider: "aws",
IgnoreKeys: ignoreKey,
Expand Down Expand Up @@ -97,6 +98,7 @@ func (g *IamGenerator) getUserGroup(svc *iam.IAM, userName *string) {
"aws_iam_user_group_membership",
"aws",
map[string]interface{}{"user": userName},
map[string]string{},
))
g.metadata[groupIDAttachment] = terraform_utils.ResourceMetaData{
Provider: "aws",
Expand All @@ -119,7 +121,8 @@ func (g *IamGenerator) getUserPolices(svc *iam.IAM, userName *string) {
resourceName,
"aws_iam_user_policy",
"aws",
nil))
nil,
map[string]string{}))
g.metadata[policyID] = terraform_utils.ResourceMetaData{
Provider: "aws",
IgnoreKeys: ignoreKey,
Expand Down
6 changes: 3 additions & 3 deletions aws_terraforming/igw/igw.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package igw

import (
"waze/terraform/aws_terraforming/awsGenerator"
"waze/terraform/aws_terraforming/aws_generator"
"waze/terraform/terraform_utils"

"github.com/aws/aws-sdk-go/aws"
Expand All @@ -18,7 +18,7 @@ var allowEmptyValues = map[string]bool{
}

type IgwGenerator struct {
awsGenerator.BasicGenerator
aws_generator.BasicGenerator
}

func (IgwGenerator) createResources(igws *ec2.DescribeInternetGatewaysOutput) []terraform_utils.TerraformResource {
Expand Down Expand Up @@ -62,7 +62,7 @@ func (g IgwGenerator) Generate(region string) error {
if err != nil {
return err
}
err = terraform_utils.GenerateTf(resources, "internet_gateway", region)
err = terraform_utils.GenerateTf(resources, "internet_gateway", region, "aws")
if err != nil {
return err
}
Expand Down
6 changes: 3 additions & 3 deletions aws_terraforming/nacl/nacl.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package nacl

import (
"waze/terraform/aws_terraforming/awsGenerator"
"waze/terraform/aws_terraforming/aws_generator"
"waze/terraform/terraform_utils"

"github.com/aws/aws-sdk-go/aws"
Expand All @@ -18,7 +18,7 @@ var allowEmptyValues = map[string]bool{
}

type NaclGenerator struct {
awsGenerator.BasicGenerator
aws_generator.BasicGenerator
}

func (NaclGenerator) createResources(nacls *ec2.DescribeNetworkAclsOutput) []terraform_utils.TerraformResource {
Expand Down Expand Up @@ -62,7 +62,7 @@ func (g NaclGenerator) Generate(region string) error {
if err != nil {
return err
}
err = terraform_utils.GenerateTf(resources, "nacl", region)
err = terraform_utils.GenerateTf(resources, "nacl", region, "aws")
if err != nil {
return err
}
Expand Down
14 changes: 10 additions & 4 deletions aws_terraforming/s3/s3.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package s3

import (
"log"
"waze/terraform/aws_terraforming/awsGenerator"
"waze/terraform/aws_terraforming/aws_generator"
"waze/terraform/terraform_utils"

"github.com/aws/aws-sdk-go/aws"
Expand All @@ -26,7 +26,7 @@ var additionalFields = map[string]string{
}

type S3Generator struct {
awsGenerator.BasicGenerator
aws_generator.BasicGenerator
}

func (S3Generator) createResources(buckets *s3.ListBucketsOutput, region string) []terraform_utils.TerraformResource {
Expand All @@ -40,7 +40,13 @@ func (S3Generator) createResources(buckets *s3.ListBucketsOutput, region string)
log.Println(err)
}
if aws.StringValue(location.LocationConstraint) == region {
resoures = append(resoures, terraform_utils.NewTerraformResource(resourceName, resourceName, "aws_s3_bucket", "aws", nil))
resoures = append(resoures, terraform_utils.NewTerraformResource(
resourceName,
resourceName,
"aws_s3_bucket",
"aws",
nil,
map[string]string{}))
}
}
return resoures
Expand All @@ -65,7 +71,7 @@ func (g S3Generator) Generate(region string) error {
if err != nil {
return err
}
err = terraform_utils.GenerateTf(resources, "buckets", region)
err = terraform_utils.GenerateTf(resources, "buckets", region, "aws")
if err != nil {
return err
}
Expand Down
6 changes: 3 additions & 3 deletions aws_terraforming/sg/sg.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package sg

import (
"strings"
"waze/terraform/aws_terraforming/awsGenerator"
"waze/terraform/aws_terraforming/aws_generator"
"waze/terraform/terraform_utils"

"github.com/aws/aws-sdk-go/aws"
Expand All @@ -23,7 +23,7 @@ var allowEmptyValues = map[string]bool{
}

type SecurityGenerator struct {
awsGenerator.BasicGenerator
aws_generator.BasicGenerator
}

func (SecurityGenerator) createResources(securityGroups []*ec2.SecurityGroup) []terraform_utils.TerraformResource {
Expand Down Expand Up @@ -77,7 +77,7 @@ func (g SecurityGenerator) Generate(region string) error {
return err
}
//resources = g.replaceIDToName(resources)
err = terraform_utils.GenerateTf(resources, "security_group", region)
err = terraform_utils.GenerateTf(resources, "security_group", region, "aws")
if err != nil {
return err
}
Expand Down
6 changes: 3 additions & 3 deletions aws_terraforming/subnet/subnet.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package subnet

import (
"waze/terraform/aws_terraforming/awsGenerator"
"waze/terraform/aws_terraforming/aws_generator"
"waze/terraform/terraform_utils"

"github.com/aws/aws-sdk-go/aws"
Expand All @@ -19,7 +19,7 @@ var allowEmptyValues = map[string]bool{
}

type SubnetGenerator struct {
awsGenerator.BasicGenerator
aws_generator.BasicGenerator
}

func (SubnetGenerator) createResources(subnets *ec2.DescribeSubnetsOutput) []terraform_utils.TerraformResource {
Expand Down Expand Up @@ -63,7 +63,7 @@ func (g SubnetGenerator) Generate(region string) error {
if err != nil {
return err
}
err = terraform_utils.GenerateTf(resources, "subnet", region)
err = terraform_utils.GenerateTf(resources, "subnet", region, "aws")
if err != nil {
return err
}
Expand Down
6 changes: 3 additions & 3 deletions aws_terraforming/vpc/vpc.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package vpc

import (
"waze/terraform/aws_terraforming/awsGenerator"
"waze/terraform/aws_terraforming/aws_generator"
"waze/terraform/terraform_utils"

"github.com/aws/aws-sdk-go/aws"
Expand All @@ -25,7 +25,7 @@ var allowEmptyValues = map[string]bool{
}

type VpcGenerator struct {
awsGenerator.BasicGenerator
aws_generator.BasicGenerator
}

func (VpcGenerator) createResources(vpcs *ec2.DescribeVpcsOutput) []terraform_utils.TerraformResource {
Expand Down Expand Up @@ -69,7 +69,7 @@ func (g VpcGenerator) Generate(region string) error {
if err != nil {
return err
}
err = terraform_utils.GenerateTf(resources, "vpc", region)
err = terraform_utils.GenerateTf(resources, "vpc", region, "aws")
if err != nil {
return err
}
Expand Down
6 changes: 3 additions & 3 deletions aws_terraforming/vpn_connection/vpn_connetion.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package vpn_connection

import (
"waze/terraform/aws_terraforming/awsGenerator"
"waze/terraform/aws_terraforming/aws_generator"
"waze/terraform/terraform_utils"

"github.com/aws/aws-sdk-go/aws"
Expand All @@ -28,7 +28,7 @@ var allowEmptyValues = map[string]bool{
}

type VpnConnectionGenerator struct {
awsGenerator.BasicGenerator
aws_generator.BasicGenerator
}

func (VpnConnectionGenerator) createResources(vpncs *ec2.DescribeVpnConnectionsOutput) []terraform_utils.TerraformResource {
Expand Down Expand Up @@ -72,7 +72,7 @@ func (g VpnConnectionGenerator) Generate(region string) error {
if err != nil {
return err
}
err = terraform_utils.GenerateTf(resources, "vpn_connection", region)
err = terraform_utils.GenerateTf(resources, "vpn_connection", region, "aws")
if err != nil {
return err
}
Expand Down
6 changes: 3 additions & 3 deletions aws_terraforming/vpn_gateway/vgw.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package vpn_gateway

import (
"waze/terraform/aws_terraforming/awsGenerator"
"waze/terraform/aws_terraforming/aws_generator"
"waze/terraform/terraform_utils"

"github.com/aws/aws-sdk-go/aws"
Expand All @@ -17,7 +17,7 @@ var allowEmptyValues = map[string]bool{
}

type VpnGatewayGenerator struct {
awsGenerator.BasicGenerator
aws_generator.BasicGenerator
}

func (VpnGatewayGenerator) createResources(vpnGws *ec2.DescribeVpnGatewaysOutput) []terraform_utils.TerraformResource {
Expand Down Expand Up @@ -61,7 +61,7 @@ func (g VpnGatewayGenerator) Generate(region string) error {
if err != nil {
return err
}
err = terraform_utils.GenerateTf(resources, "vpn_gateway", region)
err = terraform_utils.GenerateTf(resources, "vpn_gateway", region, "aws")
if err != nil {
return err
}
Expand Down
Loading

0 comments on commit f630821

Please sign in to comment.