Skip to content

Commit 0b41bd5

Browse files
author
yann degat
committed
iplb: fix mandatory attributes handling & testacc
1 parent dd082ad commit 0b41bd5

4 files changed

+134
-66
lines changed

ovh/resource_ovh_iploadbalancing_http_farm_server.go

+8-8
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ type IpLoadbalancingHttpFarmServer struct {
1414
ServerId int `json:"serverId,omitempty"`
1515
FarmId int `json:"farmId,omitempty"`
1616
DisplayName *string `json:"displayName,omitempty"`
17-
Address *string `json:"address"`
17+
Address string `json:"address"`
1818
Cookie *string `json:"cookie,omitempty"`
1919
Port *int `json:"port"`
2020
ProxyProtocolVersion *string `json:"proxyProtocolVersion"`
@@ -23,7 +23,7 @@ type IpLoadbalancingHttpFarmServer struct {
2323
Probe *bool `json:"probe"`
2424
Ssl *bool `json:"ssl"`
2525
Backup *bool `json:"backup"`
26-
Status *string `json:"status"`
26+
Status string `json:"status"`
2727
}
2828

2929
func resourceIpLoadbalancingHttpFarmServer() *schema.Resource {
@@ -122,15 +122,15 @@ func resourceIpLoadbalancingHttpFarmServerCreate(d *schema.ResourceData, meta in
122122

123123
newBackendServer := &IpLoadbalancingHttpFarmServer{
124124
DisplayName: getNilStringPointerFromData(d, "display_name"),
125-
Address: getNilStringPointerFromData(d, "address"),
125+
Address: d.Get("address").(string),
126126
Port: getNilIntPointerFromData(d, "port"),
127127
ProxyProtocolVersion: getNilStringPointerFromData(d, "proxy_protocol_version"),
128128
Chain: getNilStringPointerFromData(d, "chain"),
129129
Weight: getNilIntPointerFromData(d, "weight"),
130130
Probe: getNilBoolPointerFromData(d, "probe"),
131131
Ssl: getNilBoolPointerFromData(d, "ssl"),
132132
Backup: getNilBoolPointerFromData(d, "backup"),
133-
Status: getNilStringPointerFromData(d, "status"),
133+
Status: d.Get("status").(string),
134134
}
135135

136136
service := d.Get("service_name").(string)
@@ -167,7 +167,7 @@ func resourceIpLoadbalancingHttpFarmServerRead(d *schema.ResourceData, meta inte
167167
d.Set("probe", *r.Probe)
168168
d.Set("ssl", *r.Ssl)
169169
d.Set("backup", *r.Backup)
170-
d.Set("address", *r.Address)
170+
d.Set("address", r.Address)
171171
if r.DisplayName != nil {
172172
d.Set("display_name", *r.DisplayName)
173173
}
@@ -182,7 +182,7 @@ func resourceIpLoadbalancingHttpFarmServerRead(d *schema.ResourceData, meta inte
182182
d.Set("chain", *r.Chain)
183183
}
184184
d.Set("weight", *r.Weight)
185-
d.Set("status", *r.Status)
185+
d.Set("status", r.Status)
186186

187187
return nil
188188
}
@@ -192,15 +192,15 @@ func resourceIpLoadbalancingHttpFarmServerUpdate(d *schema.ResourceData, meta in
192192

193193
update := &IpLoadbalancingHttpFarmServer{
194194
DisplayName: getNilStringPointerFromData(d, "display_name"),
195-
Address: getNilStringPointerFromData(d, "address"),
195+
Address: d.Get("address").(string),
196196
Port: getNilIntPointerFromData(d, "port"),
197197
ProxyProtocolVersion: getNilStringPointerFromData(d, "proxy_protocol_version"),
198198
Chain: getNilStringPointerFromData(d, "chain"),
199199
Weight: getNilIntPointerFromData(d, "weight"),
200200
Probe: getNilBoolPointerFromData(d, "probe"),
201201
Ssl: getNilBoolPointerFromData(d, "ssl"),
202202
Backup: getNilBoolPointerFromData(d, "backup"),
203-
Status: getNilStringPointerFromData(d, "status"),
203+
Status: d.Get("status").(string),
204204
}
205205

206206
service := d.Get("service_name").(string)

ovh/resource_ovh_iploadbalancing_http_farm_server_test.go

+59-25
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,61 @@ import (
1313

1414
var TestAccIpLoadbalancingHttpFarmServerPlan = [][]map[string]interface{}{
1515
{
16-
{"Status": "active", "Address": "10.0.0.11", "Port": 80, "Weight": 3, "DisplayName": "testBackendA"},
17-
{"Port": 8080, "Probe": true, "Backup": true},
18-
{"Port": 8080, "Probe": false, "Backup": false, "Weight": 2, "DisplayName": "testBackendB"},
16+
{
17+
"Status": "active",
18+
"Address": "10.0.0.11",
19+
"Port": 80,
20+
"Weight": 3,
21+
"DisplayName": "testBackendA",
22+
},
23+
{
24+
"Status": "active",
25+
"Address": "10.0.0.11",
26+
"Port": 8080,
27+
"Weight": 3,
28+
"DisplayName": "testBackendA",
29+
"Probe": true,
30+
"Backup": true,
31+
},
32+
{
33+
"Status": "active",
34+
"Address": "10.0.0.11",
35+
"Port": 8080,
36+
"Weight": 2,
37+
"DisplayName": "testBackendB",
38+
"Probe": false,
39+
"Backup": false,
40+
},
1941
},
2042
{
21-
{"Status": "inactive", "Address": "10.0.0.12", "Port": 80},
22-
{"Port": 8080, "ProxyProtocolVersion": "v2", "Ssl": true},
23-
{"Port": 8080, "ProxyProtocolVersion": "v1", "Ssl": true, "Backup": false},
24-
{"Port": 8080, "ProxyProtocolVersion": nil, "Ssl": true, "Backup": true, "Status": "active"},
43+
{
44+
"Status": "inactive",
45+
"Address": "10.0.0.12",
46+
"Port": 80,
47+
},
48+
{
49+
"Status": "active",
50+
"Address": "10.0.0.11",
51+
"Port": 8080,
52+
"ProxyProtocolVersion": "v2",
53+
"Ssl": true,
54+
},
55+
{
56+
"Status": "active",
57+
"Address": "10.0.0.11",
58+
"Port": 8080,
59+
"ProxyProtocolVersion": "v1",
60+
"Ssl": true,
61+
"Backup": false,
62+
},
63+
{
64+
"Status": "active",
65+
"Address": "10.0.0.11",
66+
"Port": 8080,
67+
"ProxyProtocolVersion": nil,
68+
"Ssl": true,
69+
"Backup": true,
70+
},
2571
},
2672
}
2773

@@ -31,7 +77,7 @@ type TestAccIpLoadbalancingHttpFarmServer struct {
3177
BackendId int `json:"backendId"`
3278
FarmId int `json:"farmId"`
3379
DisplayName *string `json:"displayName"`
34-
Address *string `json:"address"`
80+
Address string `json:"address"`
3581
Cookie *string `json:"cookie"`
3682
Port *int `json:"port"`
3783
ProxyProtocolVersion *string `json:"proxyProtocolVersion"`
@@ -40,7 +86,7 @@ type TestAccIpLoadbalancingHttpFarmServer struct {
4086
Probe *bool `json:"probe"`
4187
Ssl *bool `json:"ssl"`
4288
Backup *bool `json:"backup"`
43-
Status *string `json:"status"`
89+
Status string `json:"status"`
4490
}
4591

4692
type TestAccIpLoadbalancingHttpFarmServerWrapper struct {
@@ -49,18 +95,6 @@ type TestAccIpLoadbalancingHttpFarmServerWrapper struct {
4995

5096
func (w *TestAccIpLoadbalancingHttpFarmServerWrapper) Config() string {
5197
var config bytes.Buffer
52-
var address, status string
53-
if w.Expected.Address == nil {
54-
address = ""
55-
} else {
56-
address = *w.Expected.Address
57-
}
58-
59-
if w.Expected.Status == nil {
60-
status = ""
61-
} else {
62-
status = *w.Expected.Status
63-
}
6498

6599
config.WriteString(fmt.Sprintf(`
66100
resource "ovh_iploadbalancing_http_farm" "testacc" {
@@ -81,8 +115,8 @@ func (w *TestAccIpLoadbalancingHttpFarmServerWrapper) Config() string {
81115
status = "%s"
82116
`, w.Expected.ServiceName,
83117
w.Expected.ServiceName,
84-
address,
85-
status,
118+
w.Expected.Address,
119+
w.Expected.Status,
86120
))
87121

88122
conditionalAttributeString(&config, "display_name", w.Expected.DisplayName)
@@ -137,15 +171,15 @@ type TestAccIpLoadbalancingHttpFarmServerStep struct {
137171

138172
func (w *TestAccIpLoadbalancingHttpFarmServerWrapper) TestStep(c map[string]interface{}) resource.TestStep {
139173
w.Expected.DisplayName = getNilStringPointerFromData(c, "DisplayName")
140-
w.Expected.Address = getNilStringPointerFromData(c, "Address")
174+
w.Expected.Address = c["Address"].(string)
141175
w.Expected.Port = getNilIntPointerFromData(c, "Port")
142176
w.Expected.ProxyProtocolVersion = getNilStringPointerFromData(c, "ProxyProtocolVersion")
143177
w.Expected.Chain = getNilStringPointerFromData(c, "Chain")
144178
w.Expected.Weight = getNilIntPointerFromData(c, "Weight")
145179
w.Expected.Probe = getNilBoolPointerFromData(c, "Probe")
146180
w.Expected.Ssl = getNilBoolPointerFromData(c, "Ssl")
147181
w.Expected.Backup = getNilBoolPointerFromData(c, "Backup")
148-
w.Expected.Status = getNilStringPointerFromData(c, "Status")
182+
w.Expected.Status = c["Status"].(string)
149183

150184
expected := *w.Expected
151185

ovh/resource_ovh_iploadbalancing_tcp_farm_server.go

+8-8
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ type IpLoadbalancingTcpFarmServer struct {
1414
ServerId int `json:"serverId,omitempty"`
1515
FarmId int `json:"farmId,omitempty"`
1616
DisplayName *string `json:"displayName,omitempty"`
17-
Address *string `json:"address"`
17+
Address string `json:"address"`
1818
Cookie *string `json:"cookie,omitempty"`
1919
Port *int `json:"port"`
2020
ProxyProtocolVersion *string `json:"proxyProtocolVersion"`
@@ -23,7 +23,7 @@ type IpLoadbalancingTcpFarmServer struct {
2323
Probe *bool `json:"probe"`
2424
Ssl *bool `json:"ssl"`
2525
Backup *bool `json:"backup"`
26-
Status *string `json:"status"`
26+
Status string `json:"status"`
2727
}
2828

2929
func resourceIpLoadbalancingTcpFarmServer() *schema.Resource {
@@ -122,15 +122,15 @@ func resourceIpLoadbalancingTcpFarmServerCreate(d *schema.ResourceData, meta int
122122

123123
newBackendServer := &IpLoadbalancingTcpFarmServer{
124124
DisplayName: getNilStringPointerFromData(d, "display_name"),
125-
Address: getNilStringPointerFromData(d, "address"),
125+
Address: d.Get("address").(string),
126126
Port: getNilIntPointerFromData(d, "port"),
127127
ProxyProtocolVersion: getNilStringPointerFromData(d, "proxy_protocol_version"),
128128
Chain: getNilStringPointerFromData(d, "chain"),
129129
Weight: getNilIntPointerFromData(d, "weight"),
130130
Probe: getNilBoolPointerFromData(d, "probe"),
131131
Ssl: getNilBoolPointerFromData(d, "ssl"),
132132
Backup: getNilBoolPointerFromData(d, "backup"),
133-
Status: getNilStringPointerFromData(d, "status"),
133+
Status: d.Get("status").(string),
134134
}
135135

136136
service := d.Get("service_name").(string)
@@ -167,7 +167,7 @@ func resourceIpLoadbalancingTcpFarmServerRead(d *schema.ResourceData, meta inter
167167
d.Set("probe", *r.Probe)
168168
d.Set("ssl", *r.Ssl)
169169
d.Set("backup", *r.Backup)
170-
d.Set("address", *r.Address)
170+
d.Set("address", r.Address)
171171
if r.DisplayName != nil {
172172
d.Set("display_name", *r.DisplayName)
173173
}
@@ -182,7 +182,7 @@ func resourceIpLoadbalancingTcpFarmServerRead(d *schema.ResourceData, meta inter
182182
d.Set("chain", *r.Chain)
183183
}
184184
d.Set("weight", *r.Weight)
185-
d.Set("status", *r.Status)
185+
d.Set("status", r.Status)
186186

187187
return nil
188188
}
@@ -192,15 +192,15 @@ func resourceIpLoadbalancingTcpFarmServerUpdate(d *schema.ResourceData, meta int
192192

193193
update := &IpLoadbalancingTcpFarmServer{
194194
DisplayName: getNilStringPointerFromData(d, "display_name"),
195-
Address: getNilStringPointerFromData(d, "address"),
195+
Address: d.Get("address").(string),
196196
Port: getNilIntPointerFromData(d, "port"),
197197
ProxyProtocolVersion: getNilStringPointerFromData(d, "proxy_protocol_version"),
198198
Chain: getNilStringPointerFromData(d, "chain"),
199199
Weight: getNilIntPointerFromData(d, "weight"),
200200
Probe: getNilBoolPointerFromData(d, "probe"),
201201
Ssl: getNilBoolPointerFromData(d, "ssl"),
202202
Backup: getNilBoolPointerFromData(d, "backup"),
203-
Status: getNilStringPointerFromData(d, "status"),
203+
Status: d.Get("status").(string),
204204
}
205205

206206
service := d.Get("service_name").(string)

0 commit comments

Comments
 (0)