Skip to content

Commit ef7296e

Browse files
committed
change payload handling for create and update
1 parent eef6fa6 commit ef7296e

File tree

4 files changed

+36
-35
lines changed

4 files changed

+36
-35
lines changed

internal/cmd/beta/network/create/create.go

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ type inputModel struct {
4747
IPv6PrefixLength *int64
4848
IPv6Prefix *string
4949
IPv6Gateway *string
50-
Routed *bool
50+
Routed bool
5151
NoIPv4Gateway bool
5252
NoIPv6Gateway bool
5353
}
@@ -170,7 +170,7 @@ func parseInput(p *print.Printer, cmd *cobra.Command) (*inputModel, error) {
170170
IPv6PrefixLength: flags.FlagToInt64Pointer(p, cmd, ipv6PrefixLengthFlag),
171171
IPv6Prefix: flags.FlagToStringPointer(p, cmd, ipv6PrefixFlag),
172172
IPv6Gateway: flags.FlagToStringPointer(p, cmd, ipv6GatewayFlag),
173-
Routed: flags.FlagToBoolPointer(p, cmd, routedFlag),
173+
Routed: flags.FlagToBoolValue(p, cmd, routedFlag),
174174
NoIPv4Gateway: flags.FlagToBoolValue(p, cmd, noIpv4Gateway),
175175
NoIPv6Gateway: flags.FlagToBoolValue(p, cmd, noIpv6Gateway),
176176
}
@@ -191,37 +191,37 @@ func buildRequest(ctx context.Context, model *inputModel, apiClient *iaas.APICli
191191
req := apiClient.CreateNetwork(ctx, model.ProjectId)
192192
addressFamily := &iaas.CreateNetworkAddressFamily{}
193193

194-
if model.IPv6DnsNameServers != nil || model.IPv6PrefixLength != nil || model.IPv6Prefix != nil {
194+
if model.IPv6DnsNameServers != nil || model.IPv6PrefixLength != nil || model.IPv6Prefix != nil || model.NoIPv6Gateway || model.IPv6Gateway != nil {
195195
addressFamily.Ipv6 = &iaas.CreateNetworkIPv6Body{
196196
Nameservers: model.IPv6DnsNameServers,
197197
PrefixLength: model.IPv6PrefixLength,
198198
Prefix: model.IPv6Prefix,
199199
}
200-
}
201200

202-
if model.NoIPv6Gateway {
203-
addressFamily.Ipv6.Gateway = iaas.NewNullableString(nil)
204-
} else if model.IPv6Gateway != nil {
205-
addressFamily.Ipv6.Gateway = iaas.NewNullableString(model.IPv6Gateway)
201+
if model.NoIPv6Gateway {
202+
addressFamily.Ipv6.Gateway = iaas.NewNullableString(nil)
203+
} else if model.IPv6Gateway != nil {
204+
addressFamily.Ipv6.Gateway = iaas.NewNullableString(model.IPv6Gateway)
205+
}
206206
}
207207

208-
if model.IPv4DnsNameServers != nil || model.IPv4PrefixLength != nil || model.IPv4Prefix != nil {
208+
if model.IPv4DnsNameServers != nil || model.IPv4PrefixLength != nil || model.IPv4Prefix != nil || model.NoIPv4Gateway || model.IPv4Gateway != nil {
209209
addressFamily.Ipv4 = &iaas.CreateNetworkIPv4Body{
210210
Nameservers: model.IPv4DnsNameServers,
211211
PrefixLength: model.IPv4PrefixLength,
212212
Prefix: model.IPv4Prefix,
213213
}
214-
}
215214

216-
if model.NoIPv4Gateway {
217-
addressFamily.Ipv4.Gateway = iaas.NewNullableString(nil)
218-
} else if model.IPv4Gateway != nil {
219-
addressFamily.Ipv4.Gateway = iaas.NewNullableString(model.IPv4Gateway)
215+
if model.NoIPv4Gateway {
216+
addressFamily.Ipv4.Gateway = iaas.NewNullableString(nil)
217+
} else if model.IPv4Gateway != nil {
218+
addressFamily.Ipv4.Gateway = iaas.NewNullableString(model.IPv4Gateway)
219+
}
220220
}
221221

222222
payload := iaas.CreateNetworkPayload{
223223
Name: model.Name,
224-
Routed: model.Routed,
224+
Routed: &model.Routed,
225225
}
226226

227227
if addressFamily.Ipv4 != nil || addressFamily.Ipv6 != nil {

internal/cmd/beta/network/create/create_test.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
5858
IPv6PrefixLength: utils.Ptr(int64(24)),
5959
IPv6Prefix: utils.Ptr("2001:4860:4860::8888"),
6060
IPv6Gateway: utils.Ptr("2001:4860:4860::8888"),
61-
Routed: utils.Ptr(true),
61+
Routed: true,
6262
}
6363
for _, mod := range mods {
6464
mod(model)
@@ -78,7 +78,8 @@ func fixtureRequest(mods ...func(request *iaas.ApiCreateNetworkRequest)) iaas.Ap
7878
func fixtureRequiredRequest(mods ...func(request *iaas.ApiCreateNetworkRequest)) iaas.ApiCreateNetworkRequest {
7979
request := testClient.CreateNetwork(testCtx, testProjectId)
8080
request = request.CreateNetworkPayload(iaas.CreateNetworkPayload{
81-
Name: utils.Ptr("example-network-name"),
81+
Name: utils.Ptr("example-network-name"),
82+
Routed: utils.Ptr(false),
8283
})
8384
for _, mod := range mods {
8485
mod(&request)
@@ -232,7 +233,7 @@ func TestParseInput(t *testing.T) {
232233
}),
233234
isValid: true,
234235
expectedModel: fixtureInputModel(func(model *inputModel) {
235-
model.Routed = utils.Ptr(true)
236+
model.Routed = true
236237
}),
237238
},
238239
}

internal/cmd/beta/network/update/update.go

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ type inputModel struct {
3737
*globalflags.GlobalFlagModel
3838
NetworkId string
3939
Name *string
40-
Routed *bool
40+
Routed bool
4141
IPv4DnsNameServers *[]string
4242
IPv4Gateway *string
4343
IPv6DnsNameServers *[]string
@@ -158,7 +158,7 @@ func parseInput(p *print.Printer, cmd *cobra.Command, inputArgs []string) (*inpu
158158
GlobalFlagModel: globalFlags,
159159
Name: flags.FlagToStringPointer(p, cmd, nameFlag),
160160
NetworkId: networkId,
161-
Routed: flags.FlagToBoolPointer(p, cmd, routedFlag),
161+
Routed: flags.FlagToBoolValue(p, cmd, routedFlag),
162162
IPv4DnsNameServers: flags.FlagToStringSlicePointer(p, cmd, ipv4DnsNameServersFlag),
163163
IPv4Gateway: flags.FlagToStringPointer(p, cmd, ipv4GatewayFlag),
164164
IPv6DnsNameServers: flags.FlagToStringSlicePointer(p, cmd, ipv6DnsNameServersFlag),
@@ -183,33 +183,33 @@ func buildRequest(ctx context.Context, model *inputModel, apiClient *iaas.APICli
183183
req := apiClient.PartialUpdateNetwork(ctx, model.ProjectId, model.NetworkId)
184184
addressFamily := &iaas.UpdateNetworkAddressFamily{}
185185

186-
if model.IPv6DnsNameServers != nil {
186+
if model.IPv6DnsNameServers != nil || model.NoIPv6Gateway || model.IPv6Gateway != nil {
187187
addressFamily.Ipv6 = &iaas.UpdateNetworkIPv6Body{
188188
Nameservers: model.IPv6DnsNameServers,
189189
}
190-
}
191190

192-
if model.NoIPv6Gateway {
193-
addressFamily.Ipv6.Gateway = iaas.NewNullableString(nil)
194-
} else if model.IPv6Gateway != nil {
195-
addressFamily.Ipv6.Gateway = iaas.NewNullableString(model.IPv6Gateway)
191+
if model.NoIPv6Gateway {
192+
addressFamily.Ipv6.Gateway = iaas.NewNullableString(nil)
193+
} else if model.IPv6Gateway != nil {
194+
addressFamily.Ipv6.Gateway = iaas.NewNullableString(model.IPv6Gateway)
195+
}
196196
}
197197

198-
if model.IPv4DnsNameServers != nil {
198+
if model.IPv4DnsNameServers != nil || model.NoIPv4Gateway || model.IPv4Gateway != nil {
199199
addressFamily.Ipv4 = &iaas.UpdateNetworkIPv4Body{
200200
Nameservers: model.IPv4DnsNameServers,
201201
}
202-
}
203202

204-
if model.NoIPv4Gateway {
205-
addressFamily.Ipv4.Gateway = iaas.NewNullableString(nil)
206-
} else if model.IPv4Gateway != nil {
207-
addressFamily.Ipv4.Gateway = iaas.NewNullableString(model.IPv4Gateway)
203+
if model.NoIPv4Gateway {
204+
addressFamily.Ipv4.Gateway = iaas.NewNullableString(nil)
205+
} else if model.IPv4Gateway != nil {
206+
addressFamily.Ipv4.Gateway = iaas.NewNullableString(model.IPv4Gateway)
207+
}
208208
}
209209

210210
payload := iaas.PartialUpdateNetworkPayload{
211211
Name: model.Name,
212-
Routed: model.Routed,
212+
Routed: &model.Routed,
213213
}
214214

215215
if addressFamily.Ipv4 != nil || addressFamily.Ipv6 != nil {

internal/cmd/beta/network/update/update_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ func fixtureInputModel(mods ...func(model *inputModel)) *inputModel {
5858
},
5959
Name: utils.Ptr("example-network-name"),
6060
NetworkId: testNetworkId,
61-
Routed: utils.Ptr(true),
61+
Routed: true,
6262
IPv4DnsNameServers: utils.Ptr([]string{"1.1.1.0", "1.1.2.0"}),
6363
IPv4Gateway: utils.Ptr("10.1.2.3"),
6464
IPv6DnsNameServers: utils.Ptr([]string{"2001:4860:4860::8888", "2001:4860:4860::8844"}),
@@ -229,7 +229,7 @@ func TestParseInput(t *testing.T) {
229229
}),
230230
isValid: true,
231231
expectedModel: fixtureInputModel(func(model *inputModel) {
232-
model.Routed = utils.Ptr(true)
232+
model.Routed = true
233233
}),
234234
},
235235
}

0 commit comments

Comments
 (0)