Skip to content

Commit 8061df5

Browse files
authored
Merge pull request #175 from yanndegat/renamecloudresources
mv ovh_cloud_* -> ovh_cloud_project_*
2 parents fc43c99 + a10ede3 commit 8061df5

33 files changed

+659
-704
lines changed

README.md

+9-1
Original file line numberDiff line numberDiff line change
@@ -85,13 +85,21 @@ $ source ~/.ovhrc
8585
In order for all the tests to pass you can run:
8686

8787
```sh
88+
export OVH_IP_TEST="..."
89+
export OVH_IP_BLOCK_TEST="..."
90+
export OVH_IP_REVERSE_TEST="..."
91+
export OVH_IPLB_SERVICE_TEST="..."
92+
export OVH_CLOUD_PROJECT_SERVICE_TEST="..."
93+
export OVH_VRACK_SERVICE_TEST="..."
94+
export OVH_ZONE_TEST="..."
95+
8896
$ make testacc
8997
```
9098

9199
To filter acceptance test, you can run:
92100

93101
```sh
94-
$ make testacc TESTARGS="-run TestAccPublicCloudPrivateNetwork"
102+
$ make testacc TESTARGS="-run TestAccCloudProjectPrivateNetwork"
95103
```
96104

97105
To remove dangling resources, you can run:

ovh/data_source_ovh_cloud_region.go renamed to ovh/data_source_ovh_cloud_project_region.go

+6-6
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ import (
1111
"github.com/ovh/terraform-provider-ovh/ovh/helpers/hashcode"
1212
)
1313

14-
func dataSourceCloudRegion() *schema.Resource {
14+
func dataSourceCloudProjectRegion() *schema.Resource {
1515
return &schema.Resource{
16-
Read: dataSourceCloudRegionRead,
16+
Read: dataSourceCloudProjectRegionRead,
1717
Schema: map[string]*schema.Schema{
1818
"project_id": {
1919
Type: schema.TypeString,
@@ -80,7 +80,7 @@ func dataSourceCloudRegion() *schema.Resource {
8080
}
8181
}
8282

83-
func dataSourceCloudRegionRead(d *schema.ResourceData, meta interface{}) error {
83+
func dataSourceCloudProjectRegionRead(d *schema.ResourceData, meta interface{}) error {
8484
config := meta.(*Config)
8585
serviceName, err := helpers.GetCloudProjectServiceName(d)
8686
if err != nil {
@@ -91,7 +91,7 @@ func dataSourceCloudRegionRead(d *schema.ResourceData, meta interface{}) error {
9191

9292
log.Printf("[DEBUG] Will read public cloud region %s for project: %s", name, serviceName)
9393

94-
region, err := getCloudRegion(serviceName, name, config.OVHClient)
94+
region, err := getCloudProjectRegion(serviceName, name, config.OVHClient)
9595
if err != nil {
9696
return err
9797
}
@@ -121,10 +121,10 @@ func dataSourceCloudRegionRead(d *schema.ResourceData, meta interface{}) error {
121121
return nil
122122
}
123123

124-
func getCloudRegion(serviceName, region string, client *ovh.Client) (*CloudRegionResponse, error) {
124+
func getCloudProjectRegion(serviceName, region string, client *ovh.Client) (*CloudProjectRegionResponse, error) {
125125
log.Printf("[DEBUG] Will read public cloud region %s for project: %s", region, serviceName)
126126

127-
response := &CloudRegionResponse{}
127+
response := &CloudProjectRegionResponse{}
128128
endpoint := fmt.Sprintf(
129129
"/cloud/project/%s/region/%s",
130130
url.PathEscape(serviceName),
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
package ovh
2+
3+
import (
4+
"fmt"
5+
"os"
6+
"testing"
7+
8+
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
9+
)
10+
11+
func TestAccCloudProjectRegionDataSource_basic(t *testing.T) {
12+
resource.Test(t, resource.TestCase{
13+
PreCheck: func() { testAccPreCheckCloud(t) },
14+
Providers: testAccProviders,
15+
Steps: []resource.TestStep{
16+
{
17+
Config: testAccCloudProjectRegionDatasourceConfig,
18+
Check: resource.ComposeTestCheckFunc(
19+
resource.TestCheckResourceAttrSet("data.ovh_cloud_project_region.region_attr.0", "name"),
20+
resource.TestCheckResourceAttrSet("data.ovh_cloud_project_region.region_attr.0", "services.#"),
21+
resource.TestCheckResourceAttrSet("data.ovh_cloud_project_region.region_attr.1", "name"),
22+
resource.TestCheckResourceAttrSet("data.ovh_cloud_project_region.region_attr.1", "services.#"),
23+
resource.TestCheckResourceAttrSet("data.ovh_cloud_project_region.region_attr.2", "name"),
24+
resource.TestCheckResourceAttrSet("data.ovh_cloud_project_region.region_attr.2", "services.#"),
25+
),
26+
},
27+
},
28+
})
29+
}
30+
31+
func TestAccCloudProjectRegionDataSourceDeprecated_basic(t *testing.T) {
32+
resource.Test(t, resource.TestCase{
33+
PreCheck: func() { testAccPreCheckCloud(t) },
34+
Providers: testAccProviders,
35+
Steps: []resource.TestStep{
36+
{
37+
Config: testAccCloudProjectRegionDatasourceDeprecatedConfig,
38+
Check: resource.ComposeTestCheckFunc(
39+
resource.TestCheckResourceAttrSet("data.ovh_cloud_project_region.region_attr.0", "name"),
40+
resource.TestCheckResourceAttrSet("data.ovh_cloud_project_region.region_attr.0", "services.#"),
41+
resource.TestCheckResourceAttrSet("data.ovh_cloud_project_region.region_attr.1", "name"),
42+
resource.TestCheckResourceAttrSet("data.ovh_cloud_project_region.region_attr.1", "services.#"),
43+
resource.TestCheckResourceAttrSet("data.ovh_cloud_project_region.region_attr.2", "name"),
44+
resource.TestCheckResourceAttrSet("data.ovh_cloud_project_region.region_attr.2", "services.#"),
45+
),
46+
},
47+
},
48+
})
49+
}
50+
51+
var testAccCloudProjectRegionDatasourceConfig = fmt.Sprintf(`
52+
data "ovh_cloud_project_regions" "regions" {
53+
service_name = "%s"
54+
}
55+
56+
data "ovh_cloud_project_region" "region_attr" {
57+
count = 3
58+
service_name = data.ovh_cloud_project_regions.regions.service_name
59+
name = element(sort(data.ovh_cloud_project_regions.regions.names), count.index)
60+
}
61+
`, os.Getenv("OVH_CLOUD_PROJECT_SERVICE_TEST"))
62+
63+
var testAccCloudProjectRegionDatasourceDeprecatedConfig = fmt.Sprintf(`
64+
data "ovh_cloud_project_regions" "regions" {
65+
project_id = "%s"
66+
}
67+
68+
data "ovh_cloud_project_region" "region_attr" {
69+
count = 3
70+
project_id = data.ovh_cloud_project_regions.regions.service_name
71+
name = element(sort(data.ovh_cloud_project_regions.regions.names), count.index)
72+
}
73+
`, os.Getenv("OVH_CLOUD_PROJECT_SERVICE_TEST"))

ovh/data_source_ovh_cloud_regions.go renamed to ovh/data_source_ovh_cloud_project_regions.go

+4-4
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ import (
99
"github.com/ovh/terraform-provider-ovh/ovh/helpers"
1010
)
1111

12-
func dataSourceCloudRegions() *schema.Resource {
12+
func dataSourceCloudProjectRegions() *schema.Resource {
1313
return &schema.Resource{
14-
Read: dataSourceCloudRegionsRead,
14+
Read: dataSourceCloudProjectRegionsRead,
1515
Schema: map[string]*schema.Schema{
1616
"project_id": {
1717
Type: schema.TypeString,
@@ -46,7 +46,7 @@ func dataSourceCloudRegions() *schema.Resource {
4646
}
4747
}
4848

49-
func dataSourceCloudRegionsRead(d *schema.ResourceData, meta interface{}) error {
49+
func dataSourceCloudProjectRegionsRead(d *schema.ResourceData, meta interface{}) error {
5050
config := meta.(*Config)
5151
serviceName, err := helpers.GetCloudProjectServiceName(d)
5252
if err != nil {
@@ -84,7 +84,7 @@ func dataSourceCloudRegionsRead(d *schema.ResourceData, meta interface{}) error
8484

8585
filtered_names := make([]string, 0)
8686
for _, n := range names {
87-
region, err := getCloudRegion(serviceName, n, config.OVHClient)
87+
region, err := getCloudProjectRegion(serviceName, n, config.OVHClient)
8888
if err != nil {
8989
return err
9090
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
package ovh
2+
3+
import (
4+
"fmt"
5+
"os"
6+
"testing"
7+
8+
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
9+
)
10+
11+
func TestAccCloudProjectRegionsDataSource_basic(t *testing.T) {
12+
resource.Test(t, resource.TestCase{
13+
PreCheck: func() { testAccPreCheckCloud(t) },
14+
Providers: testAccProviders,
15+
Steps: []resource.TestStep{
16+
{
17+
Config: testAccCloudProjectRegionsDatasourceConfig,
18+
Check: resource.TestCheckResourceAttrSet("data.ovh_cloud_project_regions.regions", "names.#"),
19+
},
20+
},
21+
})
22+
}
23+
24+
func TestAccCloudProjectRegionsDeprecatedDataSource_basic(t *testing.T) {
25+
resource.Test(t, resource.TestCase{
26+
PreCheck: func() { testAccPreCheckCloud(t) },
27+
Providers: testAccProviders,
28+
Steps: []resource.TestStep{
29+
{
30+
Config: testAccCloudProjectRegionsDatasourceDeprecatedConfig,
31+
Check: resource.TestCheckResourceAttrSet("data.ovh_cloud_project_regions.regions", "names.#"),
32+
},
33+
},
34+
})
35+
}
36+
37+
func TestAccCloudProjectRegionsDataSource_withNetworkUp(t *testing.T) {
38+
resource.Test(t, resource.TestCase{
39+
PreCheck: func() { testAccPreCheckCloud(t) },
40+
Providers: testAccProviders,
41+
Steps: []resource.TestStep{
42+
{
43+
Config: testAccCloudProjectRegionsDatasourceConfig_withNetwork,
44+
Check: resource.TestCheckResourceAttrSet("data.ovh_cloud_project_regions.regions", "names.#"),
45+
},
46+
},
47+
})
48+
}
49+
50+
var testAccCloudProjectRegionsDatasourceConfig = fmt.Sprintf(`
51+
data "ovh_cloud_project_regions" "regions" {
52+
service_name = "%s"
53+
}
54+
`, os.Getenv("OVH_CLOUD_PROJECT_SERVICE_TEST"))
55+
56+
var testAccCloudProjectRegionsDatasourceDeprecatedConfig = fmt.Sprintf(`
57+
data "ovh_cloud_project_regions" "regions" {
58+
project_id = "%s"
59+
}
60+
`, os.Getenv("OVH_CLOUD_PROJECT_SERVICE_TEST"))
61+
62+
var testAccCloudProjectRegionsDatasourceConfig_withNetwork = fmt.Sprintf(`
63+
data "ovh_cloud_project_regions" "regions" {
64+
service_name = "%s"
65+
has_services_up = ["network"]
66+
}
67+
`, os.Getenv("OVH_CLOUD_PROJECT_SERVICE_TEST"))

ovh/data_source_ovh_cloud_region_test.go

-73
This file was deleted.

ovh/data_source_ovh_cloud_regions_test.go

-67
This file was deleted.

0 commit comments

Comments
 (0)