github.com/boyvanduuren/terraform@v0.7.0-rc2.0.20160805175930-de822d909c40/builtin/providers/aws/data_source_aws_ecs_container_definition_test.go (about)

     1  package aws
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/hashicorp/terraform/helper/resource"
     7  )
     8  
     9  func TestAccAWSEcsDataSource_ecsContainerDefinition(t *testing.T) {
    10  	resource.Test(t, resource.TestCase{
    11  		PreCheck:  func() { testAccPreCheck(t) },
    12  		Providers: testAccProviders,
    13  		Steps: []resource.TestStep{
    14  			resource.TestStep{
    15  				Config: testAccCheckAwsEcsContainerDefinitionDataSourceConfig,
    16  				Check: resource.ComposeTestCheckFunc(
    17  					resource.TestCheckResourceAttr("data.aws_ecs_container_definition.mongo", "image", "mongo:latest"),
    18  					resource.TestCheckResourceAttr("data.aws_ecs_container_definition.mongo", "image_digest", "latest"),
    19  					resource.TestCheckResourceAttr("data.aws_ecs_container_definition.mongo", "memory", "128"),
    20  					resource.TestCheckResourceAttr("data.aws_ecs_container_definition.mongo", "cpu", "128"),
    21  					resource.TestCheckResourceAttr("data.aws_ecs_container_definition.mongo", "environment.SECRET", "KEY"),
    22  				),
    23  			},
    24  		},
    25  	})
    26  }
    27  
    28  const testAccCheckAwsEcsContainerDefinitionDataSourceConfig = `
    29  resource "aws_ecs_cluster" "default" {
    30    name = "terraformecstest1"
    31  }
    32  
    33  resource "aws_ecs_task_definition" "mongo" {
    34    family = "mongodb"
    35    container_definitions = <<DEFINITION
    36  [
    37    {
    38      "cpu": 128,
    39      "environment": [{
    40        "name": "SECRET",
    41        "value": "KEY"
    42      }],
    43      "essential": true,
    44      "image": "mongo:latest",
    45      "memory": 128,
    46      "name": "mongodb"
    47    }
    48  ]
    49  DEFINITION
    50  }
    51  
    52  resource "aws_ecs_service" "mongo" {
    53    name = "mongodb"
    54    cluster = "${aws_ecs_cluster.default.id}"
    55    task_definition = "${aws_ecs_task_definition.mongo.arn}"
    56    desired_count = 1
    57  }
    58  
    59  data "aws_ecs_container_definition" "mongo" {
    60    task_definition = "${aws_ecs_task_definition.mongo.id}"
    61    container_name = "mongodb"
    62  }
    63  `