Skip to content

Commit d4f05cf

Browse files
authored
* Bump gophercloud * Improve object storage tempurl tests
1 parent 1bc8859 commit d4f05cf

186 files changed

Lines changed: 3851 additions & 9094 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎go.mod‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
module github.com/terraform-providers/terraform-provider-openstack
22

33
require (
4-
github.com/gophercloud/gophercloud v0.8.1-0.20200210022740-9fb9244fa670
5-
github.com/gophercloud/utils v0.0.0-20191212191830-4533a07bd492
4+
github.com/gophercloud/gophercloud v0.10.1-0.20200424014253-c3bfe50899e5
5+
github.com/gophercloud/utils v0.0.0-20200423144003-7c72efc7435d
66
github.com/hashicorp/terraform-plugin-sdk v1.7.0
77
github.com/mitchellh/go-homedir v1.1.0
88
github.com/stretchr/testify v1.3.0

‎go.sum‎

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -66,11 +66,11 @@ github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+
6666
github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg=
6767
github.com/googleapis/gax-go/v2 v2.0.5 h1:sjZBwGj9Jlw33ImPtvFviGYvseOtDM7hkSKB7+Tv3SM=
6868
github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk=
69-
github.com/gophercloud/gophercloud v0.0.0-20190212181753-892256c46858/go.mod h1:vxM41WHh5uqHVBMZHzuwNOHh8XEoIEcSTewFxm1c5g8=
70-
github.com/gophercloud/gophercloud v0.8.1-0.20200210022740-9fb9244fa670 h1:blzC92EDy6KkVmi5QaBU//26ykQHHKLm27MvOsSPLrA=
71-
github.com/gophercloud/gophercloud v0.8.1-0.20200210022740-9fb9244fa670/go.mod h1:Kc/QKr9thLKruO/dG0szY8kRIYS+iENz0ziI0hJf76A=
72-
github.com/gophercloud/utils v0.0.0-20191212191830-4533a07bd492 h1:NAwq2GgRiqbNLw1cA7KUdt7lDR/NzJtk4EXGxO3gqas=
73-
github.com/gophercloud/utils v0.0.0-20191212191830-4533a07bd492/go.mod h1:SZ9FTKibIotDtCrxAU/evccoyu1yhKST6hgBvwTB5Eg=
69+
github.com/gophercloud/gophercloud v0.6.1-0.20191122030953-d8ac278c1c9d/go.mod h1:ozGNgr9KYOVATV5jsgHl/ceCDXGuguqOZAzoQ/2vcNM=
70+
github.com/gophercloud/gophercloud v0.10.1-0.20200424014253-c3bfe50899e5 h1:Ciwp7ro4LyptUOkili/TX/ecuYr7vGtEIFnOOOKUjD8=
71+
github.com/gophercloud/gophercloud v0.10.1-0.20200424014253-c3bfe50899e5/go.mod h1:gmC5oQqMDOMO1t1gq5DquX/yAU808e/4mzjjDA76+Ss=
72+
github.com/gophercloud/utils v0.0.0-20200423144003-7c72efc7435d h1:fduaPzWwIfvOMLuHk2Al3GZH0XbUqG8MbElPop+Igzs=
73+
github.com/gophercloud/utils v0.0.0-20200423144003-7c72efc7435d/go.mod h1:ehWUbLQJPqS0Ep+CxeD559hsm9pthPXadJNKwZkp43w=
7474
github.com/hashicorp/errwrap v1.0.0 h1:hLrqtEDnRye3+sgx6z4qVLNuviH3MR5aQ0ykNJa/UYA=
7575
github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=
7676
github.com/hashicorp/go-cleanhttp v0.5.0/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80=
@@ -179,7 +179,6 @@ github.com/vmihailenco/msgpack v3.3.3+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6Ac
179179
github.com/vmihailenco/msgpack v4.0.1+incompatible h1:RMF1enSPeKTlXrXdOcqjFUElywVZjjC6pqse21bKbEU=
180180
github.com/vmihailenco/msgpack v4.0.1+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk=
181181
github.com/zclconf/go-cty v1.0.0/go.mod h1:xnAOWiHeOqg2nWS62VtQ7pbOu17FtxJNW8RLEih+O3s=
182-
github.com/zclconf/go-cty v1.1.0 h1:uJwc9HiBOCpoKIObTQaLR+tsEXx1HBHnOsOOpcdhZgw=
183182
github.com/zclconf/go-cty v1.1.0/go.mod h1:xnAOWiHeOqg2nWS62VtQ7pbOu17FtxJNW8RLEih+O3s=
184183
github.com/zclconf/go-cty v1.2.1 h1:vGMsygfmeCl4Xb6OA5U5XVAaQZ69FvoG7X2jUtQujb8=
185184
github.com/zclconf/go-cty v1.2.1/go.mod h1:hOPWgoHbaTUnI5k4D2ld+GRpFJSCe6bCM7m1q/N4PQ8=
@@ -188,7 +187,6 @@ github.com/zclconf/go-cty-yaml v1.0.1/go.mod h1:IP3Ylp0wQpYm50IHK8OZWKMu6sPJIUgK
188187
go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU=
189188
go.opencensus.io v0.22.0 h1:C9hSCOW830chIVkdja34wa6Ky+IzWllkUinR+BtRZd4=
190189
go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8=
191-
golang.org/x/crypto v0.0.0-20190211182817-74369b46fc67/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
192190
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
193191
golang.org/x/crypto v0.0.0-20190426145343-a29dc8fdc734/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
194192
golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
@@ -231,7 +229,6 @@ golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJ
231229
golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
232230
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
233231
golang.org/x/sys v0.0.0-20190129075346-302c3dd5f1cc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
234-
golang.org/x/sys v0.0.0-20190209173611-3b5209105503/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
235232
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
236233
golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
237234
golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -293,7 +290,7 @@ gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8
293290
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo=
294291
gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
295292
gopkg.in/cheggaaa/pb.v1 v1.0.27/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw=
296-
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
293+
gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
297294
gopkg.in/yaml.v2 v2.2.7 h1:VUgggvou5XRW9mHwD/yXxIYSMtY0zoKQf/v226p2nyo=
298295
gopkg.in/yaml.v2 v2.2.7/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
299296
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=

‎openstack/data_source_openstack_sharedfilesystem_share_v2.go‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ func dataSourceSharedFilesystemShareV2Read(d *schema.ResourceData, meta interfac
169169
share = allShares[0]
170170
}
171171

172-
exportLocationsRaw, err := shares.GetExportLocations(sfsClient, share.ID).Extract()
172+
exportLocationsRaw, err := shares.ListExportLocations(sfsClient, share.ID).Extract()
173173
if err != nil {
174174
return fmt.Errorf("Failed to retrieve share's export_locations %s: %s", share.ID, err)
175175
}

‎openstack/resource_openstack_compute_instance_v2.go‎

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ import (
2323
"github.com/gophercloud/gophercloud/openstack/compute/v2/flavors"
2424
"github.com/gophercloud/gophercloud/openstack/compute/v2/images"
2525
"github.com/gophercloud/gophercloud/openstack/compute/v2/servers"
26+
flavors_utils "github.com/gophercloud/utils/openstack/compute/v2/flavors"
27+
images_utils "github.com/gophercloud/utils/openstack/compute/v2/images"
2628
"github.com/hashicorp/terraform-plugin-sdk/helper/hashcode"
2729
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
2830
"github.com/hashicorp/terraform-plugin-sdk/helper/schema"
@@ -869,7 +871,7 @@ func resourceComputeInstanceV2Update(d *schema.ResourceData, meta interface{}) e
869871
newFlavorId = d.Get("flavor_id").(string)
870872
} else {
871873
newFlavorName := d.Get("flavor_name").(string)
872-
newFlavorId, err = flavors.IDFromName(computeClient, newFlavorName)
874+
newFlavorId, err = flavors_utils.IDFromName(computeClient, newFlavorName)
873875
if err != nil {
874876
return err
875877
}
@@ -1265,7 +1267,7 @@ func getImageIDFromConfig(computeClient *gophercloud.ServiceClient, d *schema.Re
12651267
}
12661268

12671269
if imageName != "" {
1268-
imageId, err := images.IDFromName(computeClient, imageName)
1270+
imageId, err := images_utils.IDFromName(computeClient, imageName)
12691271
if err != nil {
12701272
return "", err
12711273
}
@@ -1333,7 +1335,7 @@ func getFlavorID(computeClient *gophercloud.ServiceClient, d *schema.ResourceDat
13331335
}
13341336

13351337
if flavorName != "" {
1336-
flavorId, err := flavors.IDFromName(computeClient, flavorName)
1338+
flavorId, err := flavors_utils.IDFromName(computeClient, flavorName)
13371339
if err != nil {
13381340
return "", err
13391341
}

‎openstack/resource_openstack_identity_application_credential_v3.go‎

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,13 +132,18 @@ func resourceIdentityApplicationCredentialV3Create(d *schema.ResourceData, meta
132132
return err
133133
}
134134

135+
var expiresAt *time.Time
136+
if v, err := time.Parse(time.RFC3339, d.Get("expires_at").(string)); err == nil {
137+
expiresAt = &v
138+
}
139+
135140
createOpts := applicationcredentials.CreateOpts{
136141
Name: d.Get("name").(string),
137142
Description: d.Get("description").(string),
138143
Unrestricted: d.Get("unrestricted").(bool),
139144
Roles: expandIdentityApplicationCredentialRolesV3(d.Get("roles").(*schema.Set).List()),
140145
AccessRules: expandIdentityApplicationCredentialAccessRulesV3(d.Get("access_rules").(*schema.Set).List()),
141-
ExpiresAt: d.Get("expires_at").(string),
146+
ExpiresAt: expiresAt,
142147
}
143148

144149
log.Printf("[DEBUG] openstack_identity_application_credential_v3 create options: %#v", createOpts)

‎openstack/resource_openstack_keymanager_secret_v1.go‎

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -191,9 +191,8 @@ func resourceKeyManagerSecretV1Create(d *schema.ResourceData, meta interface{})
191191
}
192192

193193
var expiration *time.Time
194-
if v, _ := time.Parse(time.RFC3339, d.Get("expiration").(string)); v != (time.Time{}) {
195-
expiration = new(time.Time)
196-
*expiration = v
194+
if v, err := time.Parse(time.RFC3339, d.Get("expiration").(string)); err == nil {
195+
expiration = &v
197196
}
198197

199198
secretType := keyManagerSecretV1SecretType(d.Get("secret_type").(string))

‎openstack/resource_openstack_objectstorage_tempurl_v1_test.go‎

Lines changed: 57 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ package openstack
22

33
import (
44
"fmt"
5+
"io/ioutil"
6+
"net/http"
57
"testing"
68

79
"github.com/hashicorp/terraform-plugin-sdk/helper/resource"
@@ -23,6 +25,7 @@ func TestAccOpenStackObjectStorageTempurlV1_basic(t *testing.T) {
2325
Config: testAccOpenStackObjectstorageTempurlV1Resource_basic(containerName, objectName, "get", ttl),
2426
Check: resource.ComposeTestCheckFunc(
2527
testAccCheckObjectstorageTempurlV1ResourceID("openstack_objectstorage_tempurl_v1.tempurl_1"),
28+
testAccCheckObjectstorageTempurlV1Get("openstack_objectstorage_tempurl_v1.tempurl_1"),
2629
resource.TestCheckResourceAttr(
2730
"openstack_objectstorage_tempurl_v1.tempurl_1", "method", "get"),
2831
resource.TestCheckResourceAttr(
@@ -67,6 +70,40 @@ func testAccCheckObjectstorageTempurlV1ResourceID(n string) resource.TestCheckFu
6770
}
6871
}
6972

73+
func testAccCheckObjectstorageTempurlV1Get(n string) resource.TestCheckFunc {
74+
return func(s *terraform.State) error {
75+
rs, ok := s.RootModule().Resources[n]
76+
if !ok {
77+
return fmt.Errorf("Can't find temp url resource: %s", n)
78+
}
79+
80+
if rs.Primary.ID == "" {
81+
return fmt.Errorf("Endpoint resource ID not set")
82+
}
83+
84+
var url string
85+
if url, ok = rs.Primary.Attributes["url"]; !ok {
86+
return fmt.Errorf("Temp URL is not set")
87+
}
88+
89+
resp, err := http.Get(url)
90+
if err != nil {
91+
return fmt.Errorf("Failed to retrieve tempurl: %s", url)
92+
}
93+
defer resp.Body.Close()
94+
data, err := ioutil.ReadAll(resp.Body)
95+
if err != nil {
96+
return fmt.Errorf("Failed to read tempurl body: %s", url)
97+
}
98+
99+
if v := string(data); v != "Hello, world!" {
100+
return fmt.Errorf("Tempurl body doesn't match the expected data: %s", v)
101+
}
102+
103+
return nil
104+
}
105+
}
106+
70107
/*func testAccCheckObjectstorageTempurlV1Expired(n string, ttl int) resource.TestCheckFunc {
71108
return func(s *terraform.State) error {
72109
time.Sleep(time.Duration(ttl))
@@ -80,11 +117,24 @@ func testAccCheckObjectstorageTempurlV1ResourceID(n string) resource.TestCheckFu
80117

81118
func testAccOpenStackObjectstorageTempurlV1Resource_basic(container, object string, method string, ttl int) string {
82119
return fmt.Sprintf(`
83-
resource "openstack_objectstorage_tempurl_v1" "tempurl_1" {
84-
object = "%s"
85-
container = "%s"
86-
method = "%s"
87-
ttl = %d
88-
}
89-
`, object, container, method, ttl)
120+
resource "openstack_objectstorage_container_v1" "container_1" {
121+
name = "%s"
122+
metadata = {
123+
Temp-URL-Key = "testkey"
124+
}
125+
}
126+
127+
resource "openstack_objectstorage_object_v1" "object_1" {
128+
container_name = "${openstack_objectstorage_container_v1.container_1.name}"
129+
name = "%s"
130+
content = "Hello, world!"
131+
}
132+
133+
resource "openstack_objectstorage_tempurl_v1" "tempurl_1" {
134+
object = "${openstack_objectstorage_object_v1.object_1.name}"
135+
container = "${openstack_objectstorage_container_v1.container_1.name}"
136+
method = "%s"
137+
ttl = %d
138+
}
139+
`, container, object, method, ttl)
90140
}

‎openstack/resource_openstack_sharedfilesystem_share_v2.go‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,7 @@ func resourceSharedFilesystemShareV2Read(d *schema.ResourceData, meta interface{
244244

245245
log.Printf("[DEBUG] Retrieved share %s: %#v", d.Id(), share)
246246

247-
exportLocationsRaw, err := shares.GetExportLocations(sfsClient, d.Id()).Extract()
247+
exportLocationsRaw, err := shares.ListExportLocations(sfsClient, d.Id()).Extract()
248248
if err != nil {
249249
return fmt.Errorf("Failed to retrieve share's export_locations %s: %s", d.Id(), err)
250250
}

0 commit comments

Comments
 (0)