From 776f15f0f36e8ce368e4b3ca0ca233a855bfa6d9 Mon Sep 17 00:00:00 2001 From: Joe Topjian Date: Fri, 30 Oct 2015 22:14:53 +0000 Subject: [PATCH] provider/openstack: added acceptance test to test security group order --- ...urce_openstack_compute_instance_v2_test.go | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/builtin/providers/openstack/resource_openstack_compute_instance_v2_test.go b/builtin/providers/openstack/resource_openstack_compute_instance_v2_test.go index 95b3b446f0..b2160f2670 100644 --- a/builtin/providers/openstack/resource_openstack_compute_instance_v2_test.go +++ b/builtin/providers/openstack/resource_openstack_compute_instance_v2_test.go @@ -10,6 +10,7 @@ import ( "github.com/rackspace/gophercloud/openstack/blockstorage/v1/volumes" "github.com/rackspace/gophercloud/openstack/compute/v2/extensions/floatingip" + "github.com/rackspace/gophercloud/openstack/compute/v2/extensions/secgroups" "github.com/rackspace/gophercloud/openstack/compute/v2/extensions/volumeattach" "github.com/rackspace/gophercloud/openstack/compute/v2/servers" "github.com/rackspace/gophercloud/pagination" @@ -102,6 +103,46 @@ func TestAccComputeV2Instance_floatingIPAttach(t *testing.T) { }) } +func TestAccComputeV2Instance_multi_secgroups(t *testing.T) { + var instance servers.Server + var secgroup secgroups.SecurityGroup + var testAccComputeV2Instance_multi_secgroups = fmt.Sprintf(` + resource "openstack_compute_secgroup_v2" "foo" { + name = "terraform-test" + description = "a security group" + rule { + from_port = 22 + to_port = 22 + ip_protocol = "tcp" + cidr = "0.0.0.0/0" + } + } + + resource "openstack_compute_instance_v2" "foo" { + name = "terraform-test" + security_groups = ["default", "${openstack_compute_secgroup_v2.foo.name}"] + network { + uuid = "%s" + } + }`, + os.Getenv("OS_NETWORK_ID")) + + resource.Test(t, resource.TestCase{ + PreCheck: func() { testAccPreCheck(t) }, + Providers: testAccProviders, + CheckDestroy: testAccCheckComputeV2InstanceDestroy, + Steps: []resource.TestStep{ + resource.TestStep{ + Config: testAccComputeV2Instance_multi_secgroups, + Check: resource.ComposeTestCheckFunc( + testAccCheckComputeV2SecGroupExists(t, "openstack_compute_secgroup_v2.foo", &secgroup), + testAccCheckComputeV2InstanceExists(t, "openstack_compute_instance_v2.foo", &instance), + ), + }, + }, + }) +} + func testAccCheckComputeV2InstanceDestroy(s *terraform.State) error { config := testAccProvider.Meta().(*Config) computeClient, err := config.computeV2Client(OS_REGION_NAME)