// Authorizes the ingress rule on the db security group func authorize_ingress_rule(ingress interface{}, dbSecurityGroupName string, conn *rds.Rds) error { ing := ingress.(map[string]interface{}) opts := rds.AuthorizeDBSecurityGroupIngress{ DBSecurityGroupName: dbSecurityGroupName, } if attr, ok := ing["cidr"].(string); ok && attr != "" { opts.Cidr = attr } if attr, ok := ing["security_group_name"].(string); ok && attr != "" { opts.EC2SecurityGroupName = attr } if attr, ok := ing["security_group_id"].(string); ok && attr != "" { opts.EC2SecurityGroupId = attr } if attr, ok := ing["security_group_owner_id"].(string); ok && attr != "" { opts.EC2SecurityGroupOwnerId = attr } log.Printf("[DEBUG] Authorize ingress rule configuration: %#v", opts) _, err := conn.AuthorizeDBSecurityGroupIngress(&opts) if err != nil { return fmt.Errorf("Error authorizing security group ingress: %s", err) } return nil }
func resource_aws_db_instance_retrieve(id string, conn *rds.Rds) (*rds.DBInstance, error) { opts := rds.DescribeDBInstances{ DBInstanceIdentifier: id, } log.Printf("[DEBUG] DB Instance describe configuration: %#v", opts) resp, err := conn.DescribeDBInstances(&opts) if err != nil { return nil, fmt.Errorf("Error retrieving DB Instances: %s", err) } if len(resp.DBInstances) != 1 || resp.DBInstances[0].DBInstanceIdentifier != id { if err != nil { return nil, fmt.Errorf("Unable to find DB Instance: %#v", resp.DBInstances) } } v := resp.DBInstances[0] return &v, nil }
func resource_aws_db_security_group_retrieve(id string, conn *rds.Rds) (*rds.DBSecurityGroup, error) { opts := rds.DescribeDBSecurityGroups{ DBSecurityGroupName: id, } log.Printf("[DEBUG] DB Security Group describe configuration: %#v", opts) resp, err := conn.DescribeDBSecurityGroups(&opts) if err != nil { return nil, fmt.Errorf("Error retrieving DB Security Groups: %s", err) } if len(resp.DBSecurityGroups) != 1 || resp.DBSecurityGroups[0].Name != id { if err != nil { return nil, fmt.Errorf("Unable to find DB Security Group: %#v", resp.DBSecurityGroups) } } v := resp.DBSecurityGroups[0] return &v, nil }