terraform: github.com/keshavdv/terraform/builtin/providers/aws Index | Files

package aws

import "github.com/keshavdv/terraform/builtin/providers/aws"

Index

Package Files

auth_helpers.go autoscaling_tags.go awserr.go cloudfront_distribution_configuration_structure.go config.go data_source_availability_zones.go data_source_aws_ami.go data_source_aws_iam_policy_document.go data_source_aws_s3_bucket_object.go hosted_zones.go iam_policy_model.go import_aws_network_acl.go import_aws_route_table.go import_aws_security_group.go network_acl_entry.go opsworks_layers.go provider.go resource_aws_ami.go resource_aws_ami_copy.go resource_aws_ami_from_instance.go resource_aws_api_gateway_account.go resource_aws_api_gateway_api_key.go resource_aws_api_gateway_authorizer.go resource_aws_api_gateway_deployment.go resource_aws_api_gateway_integration.go resource_aws_api_gateway_integration_response.go resource_aws_api_gateway_method.go resource_aws_api_gateway_method_response.go resource_aws_api_gateway_model.go resource_aws_api_gateway_resource.go resource_aws_api_gateway_rest_api.go resource_aws_app_cookie_stickiness_policy.go resource_aws_autoscaling_group.go resource_aws_autoscaling_group_waiting.go resource_aws_autoscaling_lifecycle_hook.go resource_aws_autoscaling_notification.go resource_aws_autoscaling_policy.go resource_aws_autoscaling_schedule.go resource_aws_cloudformation_stack.go resource_aws_cloudfront_distribution.go resource_aws_cloudfront_origin_access_identity.go resource_aws_cloudtrail.go resource_aws_cloudwatch_event_rule.go resource_aws_cloudwatch_event_target.go resource_aws_cloudwatch_log_group.go resource_aws_cloudwatch_log_metric_filter.go resource_aws_cloudwatch_log_subscription_filter.go resource_aws_cloudwatch_metric_alarm.go resource_aws_codecommit_repository.go resource_aws_codedeploy_app.go resource_aws_codedeploy_deployment_group.go resource_aws_customer_gateway.go resource_aws_db_event_subscription.go resource_aws_db_instance.go resource_aws_db_option_group.go resource_aws_db_parameter_group.go resource_aws_db_security_group.go resource_aws_db_subnet_group.go resource_aws_default_network_acl.go resource_aws_directory_service_directory.go resource_aws_dynamodb_table.go resource_aws_ebs_volume.go resource_aws_ecr_repository.go resource_aws_ecr_repository_policy.go resource_aws_ecs_cluster.go resource_aws_ecs_service.go resource_aws_ecs_task_definition.go resource_aws_efs_file_system.go resource_aws_efs_mount_target.go resource_aws_eip.go resource_aws_eip_association.go resource_aws_elastic_beanstalk_application.go resource_aws_elastic_beanstalk_configuration_template.go resource_aws_elastic_beanstalk_environment.go resource_aws_elastic_beanstalk_environment_migrate.go resource_aws_elastic_transcoder_pipeline.go resource_aws_elastic_transcoder_preset.go resource_aws_elasticache_cluster.go resource_aws_elasticache_parameter_group.go resource_aws_elasticache_security_group.go resource_aws_elasticache_subnet_group.go resource_aws_elasticsearch_domain.go resource_aws_elb.go resource_aws_elb_attachment.go resource_aws_flow_log.go resource_aws_glacier_vault.go resource_aws_iam_access_key.go resource_aws_iam_account_password_policy.go resource_aws_iam_group.go resource_aws_iam_group_membership.go resource_aws_iam_group_policy.go resource_aws_iam_group_policy_attachment.go resource_aws_iam_instance_profile.go resource_aws_iam_policy.go resource_aws_iam_policy_attachment.go resource_aws_iam_role.go resource_aws_iam_role_policy.go resource_aws_iam_role_policy_attachment.go resource_aws_iam_saml_provider.go resource_aws_iam_server_certificate.go resource_aws_iam_user.go resource_aws_iam_user_policy.go resource_aws_iam_user_policy_attachment.go resource_aws_iam_user_ssh_key.go resource_aws_instance.go resource_aws_instance_migrate.go resource_aws_internet_gateway.go resource_aws_key_pair.go resource_aws_key_pair_migrate.go resource_aws_kinesis_firehose_delivery_stream.go resource_aws_kinesis_firehose_delivery_stream_migrate.go resource_aws_kinesis_stream.go resource_aws_kms_alias.go resource_aws_kms_key.go resource_aws_lambda_alias.go resource_aws_lambda_event_source_mapping.go resource_aws_lambda_function.go resource_aws_lambda_permission.go resource_aws_launch_configuration.go resource_aws_lb_cookie_stickiness_policy.go resource_aws_main_route_table_association.go resource_aws_nat_gateway.go resource_aws_network_acl.go resource_aws_network_acl_rule.go resource_aws_network_interface.go resource_aws_opsworks_application.go resource_aws_opsworks_custom_layer.go resource_aws_opsworks_ganglia_layer.go resource_aws_opsworks_haproxy_layer.go resource_aws_opsworks_instance.go resource_aws_opsworks_java_app_layer.go resource_aws_opsworks_memcached_layer.go resource_aws_opsworks_mysql_layer.go resource_aws_opsworks_nodejs_app_layer.go resource_aws_opsworks_php_app_layer.go resource_aws_opsworks_rails_app_layer.go resource_aws_opsworks_stack.go resource_aws_opsworks_static_web_layer.go resource_aws_placement_group.go resource_aws_proxy_protocol_policy.go resource_aws_rds_cluster.go resource_aws_rds_cluster_instance.go resource_aws_rds_cluster_parameter_group.go resource_aws_redshift_cluster.go resource_aws_redshift_parameter_group.go resource_aws_redshift_security_group.go resource_aws_redshift_subnet_group.go resource_aws_route.go resource_aws_route53_delegation_set.go resource_aws_route53_health_check.go resource_aws_route53_record.go resource_aws_route53_record_migrate.go resource_aws_route53_zone.go resource_aws_route53_zone_association.go resource_aws_route_table.go resource_aws_route_table_association.go resource_aws_s3_bucket.go resource_aws_s3_bucket_notification.go resource_aws_s3_bucket_object.go resource_aws_security_group.go resource_aws_security_group_rule.go resource_aws_security_group_rule_migrate.go resource_aws_ses_active_receipt_rule_set.go resource_aws_ses_receipt_filter.go resource_aws_ses_receipt_rule.go resource_aws_ses_receipt_rule_set.go resource_aws_sns_topic.go resource_aws_sns_topic_subscription.go resource_aws_spot_fleet_request.go resource_aws_spot_instance_request.go resource_aws_sqs_queue.go resource_aws_subnet.go resource_aws_volume_attachment.go resource_aws_vpc.go resource_aws_vpc_dhcp_options.go resource_aws_vpc_dhcp_options_association.go resource_aws_vpc_endpoint.go resource_aws_vpc_peering_connection.go resource_aws_vpn_connection.go resource_aws_vpn_gateway.go resource_vpn_connection_route.go s3_tags.go structure.go tags.go tagsBeanstalk.go tagsCloudtrail.go tagsEC.go tagsEFS.go tagsELB.go tagsRDS.go tagsRedshift.go tags_elasticsearchservice.go tags_kinesis.go tags_route53.go validators.go

Constants

const DYNAMODB_LIMIT_EXCEEDED_SLEEP = 10 * time.Second

How long to sleep if a limit-exceeded event happens

const DYNAMODB_MAX_THROTTLE_RETRIES = 5

Number of times to retry if a throttling-related exception occurs

const DYNAMODB_THROTTLE_SLEEP = 5 * time.Second

How long to sleep when a throttle-event happens

Variables

var AttributeMap = map[string]string{
    "delay_seconds":              "DelaySeconds",
    "max_message_size":           "MaximumMessageSize",
    "message_retention_seconds":  "MessageRetentionPeriod",
    "receive_wait_time_seconds":  "ReceiveMessageWaitTimeSeconds",
    "visibility_timeout_seconds": "VisibilityTimeout",
    "policy":                     "Policy",
    "redrive_policy":             "RedrivePolicy",
    "arn":                        "QueueArn",
}
var LambdaFunctionRegexp = `^(arn:aws:lambda:)?([a-z]{2}-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?$`
var SNSAttributeMap = map[string]string{
    "arn":             "TopicArn",
    "display_name":    "DisplayName",
    "policy":          "Policy",
    "delivery_policy": "DeliveryPolicy",
}

Mutable attributes

func FQDN Uses

func FQDN(name string) string

func GetAccountId Uses

func GetAccountId(iamconn *iam.IAM, stsconn *sts.STS, authProviderName string) (string, error)

func GetCredentials Uses

func GetCredentials(key, secret, token, profile, credsfile string) *awsCredentials.Credentials

This function is responsible for reading credentials from the environment in the case that they're not explicitly specified in the Terraform configuration.

func HostedZoneIDForRegion Uses

func HostedZoneIDForRegion(region string) string

Returns the hosted zone ID for an S3 website endpoint region. This can be used as input to the aws_route53_record resource's zone_id argument.

func IGAttachStateRefreshFunc Uses

func IGAttachStateRefreshFunc(conn *ec2.EC2, id string, expected string) resource.StateRefreshFunc

IGAttachStateRefreshFunc returns a resource.StateRefreshFunc that is used watch the state of an internet gateway's attachment.

func IGStateRefreshFunc Uses

func IGStateRefreshFunc(conn *ec2.EC2, id string) resource.StateRefreshFunc

IGStateRefreshFunc returns a resource.StateRefreshFunc that is used to watch an internet gateway.

func InstanceStateRefreshFunc Uses

func InstanceStateRefreshFunc(conn *ec2.EC2, instanceID string) resource.StateRefreshFunc

InstanceStateRefreshFunc returns a resource.StateRefreshFunc that is used to watch an EC2 instance.

func NGStateRefreshFunc Uses

func NGStateRefreshFunc(conn *ec2.EC2, id string) resource.StateRefreshFunc

NGStateRefreshFunc returns a resource.StateRefreshFunc that is used to watch a NAT Gateway.

func OpsworksInstanceStateRefreshFunc Uses

func OpsworksInstanceStateRefreshFunc(conn *opsworks.OpsWorks, instanceID string) resource.StateRefreshFunc

func Provider Uses

func Provider() terraform.ResourceProvider

Provider returns a terraform.ResourceProvider.

func SGStateRefreshFunc Uses

func SGStateRefreshFunc(conn *ec2.EC2, id string) resource.StateRefreshFunc

SGStateRefreshFunc returns a resource.StateRefreshFunc that is used to watch a security group.

func SpotInstanceStateRefreshFunc Uses

func SpotInstanceStateRefreshFunc(
    conn *ec2.EC2, sir ec2.SpotInstanceRequest) resource.StateRefreshFunc

SpotInstanceStateRefreshFunc returns a resource.StateRefreshFunc that is used to watch an EC2 spot instance request

func SubnetStateRefreshFunc Uses

func SubnetStateRefreshFunc(conn *ec2.EC2, id string) resource.StateRefreshFunc

SubnetStateRefreshFunc returns a resource.StateRefreshFunc that is used to watch a Subnet.

func VPCStateRefreshFunc Uses

func VPCStateRefreshFunc(conn *ec2.EC2, id string) resource.StateRefreshFunc

VPCStateRefreshFunc returns a resource.StateRefreshFunc that is used to watch a VPC.

func WebsiteDomainUrl Uses

func WebsiteDomainUrl(region string) string

type AWSClient Uses

type AWSClient struct {
    // contains filtered or unexported fields
}

type ByGroupPair Uses

type ByGroupPair []*ec2.UserIdGroupPair

ByGroupPair implements sort.Interface for []*ec2.UserIDGroupPairs based on GroupID or GroupName field (only one should be set).

func (ByGroupPair) Len Uses

func (b ByGroupPair) Len() int

func (ByGroupPair) Less Uses

func (b ByGroupPair) Less(i, j int) bool

func (ByGroupPair) Swap Uses

func (b ByGroupPair) Swap(i, j int)

type Config Uses

type Config struct {
    AccessKey     string
    SecretKey     string
    CredsFilename string
    Profile       string
    Token         string
    Region        string
    MaxRetries    int

    AllowedAccountIds   []interface{}
    ForbiddenAccountIds []interface{}

    DynamoDBEndpoint string
    KinesisEndpoint  string
    Ec2Endpoint      string
    IamEndpoint      string
    ElbEndpoint      string
    Insecure         bool
}

func (*Config) Client Uses

func (c *Config) Client() (interface{}, error)

Client configures and returns a fully initialized AWSClient

func (*Config) ValidateAccountId Uses

func (c *Config) ValidateAccountId(accountId string) error

ValidateAccountId returns a context-specific error if the configured account id is explicitly forbidden or not authorised; and nil if it is authorised.

func (*Config) ValidateCredentials Uses

func (c *Config) ValidateCredentials(stsconn *sts.STS) error

Validate credentials early and fail before we do any graph walking.

func (*Config) ValidateRegion Uses

func (c *Config) ValidateRegion() error

ValidateRegion returns an error if the configured region is not a valid aws region and nil otherwise.

type IAMPolicyDoc Uses

type IAMPolicyDoc struct {
    Id         string                `json:",omitempty"`
    Version    string                `json:",omitempty"`
    Statements []*IAMPolicyStatement `json:"Statement"`
}

type IAMPolicyStatement Uses

type IAMPolicyStatement struct {
    Sid           string                         `json:",omitempty"`
    Effect        string                         `json:",omitempty"`
    Actions       []string                       `json:"Action,omitempty"`
    NotActions    []string                       `json:"NotAction,omitempty"`
    Resources     []string                       `json:"Resource,omitempty"`
    NotResources  []string                       `json:"NotResource,omitempty"`
    Principals    IAMPolicyStatementPrincipalSet `json:"Principal,omitempty"`
    NotPrincipals IAMPolicyStatementPrincipalSet `json:"NotPrincipal,omitempty"`
    Conditions    IAMPolicyStatementConditionSet `json:"Condition,omitempty"`
}

type IAMPolicyStatementCondition Uses

type IAMPolicyStatementCondition struct {
    Test     string
    Variable string
    Values   []string
}

type IAMPolicyStatementConditionSet Uses

type IAMPolicyStatementConditionSet []IAMPolicyStatementCondition

func (IAMPolicyStatementConditionSet) MarshalJSON Uses

func (cs IAMPolicyStatementConditionSet) MarshalJSON() ([]byte, error)

type IAMPolicyStatementPrincipal Uses

type IAMPolicyStatementPrincipal struct {
    Type        string
    Identifiers []string
}

type IAMPolicyStatementPrincipalSet Uses

type IAMPolicyStatementPrincipalSet []IAMPolicyStatementPrincipal

func (IAMPolicyStatementPrincipalSet) MarshalJSON Uses

func (ps IAMPolicyStatementPrincipalSet) MarshalJSON() ([]byte, error)

type LambdaPolicy Uses

type LambdaPolicy struct {
    Version   string
    Statement []LambdaPolicyStatement
    Id        string
}

type LambdaPolicyStatement Uses

type LambdaPolicyStatement struct {
    Condition map[string]map[string]string
    Action    string
    Resource  string
    Effect    string
    Principal map[string]string
    Sid       string
}

type S3Website Uses

type S3Website struct {
    Endpoint, Domain string
}

func WebsiteEndpoint Uses

func WebsiteEndpoint(bucket string, region string) *S3Website

type TunnelInfo Uses

type TunnelInfo struct {
    Tunnel1Address      string
    Tunnel1PreSharedKey string
    Tunnel2Address      string
    Tunnel2PreSharedKey string
}

type XmlIpsecTunnel Uses

type XmlIpsecTunnel struct {
    OutsideAddress string `xml:"vpn_gateway>tunnel_outside_address>ip_address"`
    PreSharedKey   string `xml:"ike>pre_shared_key"`
}

type XmlVpnConnectionConfig Uses

type XmlVpnConnectionConfig struct {
    Tunnels []XmlIpsecTunnel `xml:"ipsec_tunnel"`
}

func (XmlVpnConnectionConfig) Len Uses

func (slice XmlVpnConnectionConfig) Len() int

func (XmlVpnConnectionConfig) Less Uses

func (slice XmlVpnConnectionConfig) Less(i, j int) bool

func (XmlVpnConnectionConfig) Swap Uses

func (slice XmlVpnConnectionConfig) Swap(i, j int)

Package aws imports 78 packages (graph). Updated 2017-08-28. Refresh now. Tools for package owners. This is a quick bug-fix fork (has fewer than three commits, and only during the week it was created).