Skip to content

Commit 66bc951

Browse files
committed
Fix deployVnfAppliance and createVMFromBackup
1 parent 5fe04df commit 66bc951

3 files changed

Lines changed: 188 additions & 54 deletions

File tree

cloudstack/BackupService.go

Lines changed: 88 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -747,9 +747,11 @@ func (p *CreateVMFromBackupParams) toURLValues() url.Values {
747747
}
748748
}
749749
if v, found := p.p["datadisksdetails"]; found {
750-
m := v.(map[string]string)
751-
for i, k := range getSortedKeysFromMap(m) {
752-
u.Set(fmt.Sprintf("datadisksdetails[%d].%s", i, k), m[k])
750+
l := v.([]map[string]string)
751+
for i, m := range l {
752+
for key, val := range m {
753+
u.Set(fmt.Sprintf("datadisksdetails[%d].%s", i, key), val)
754+
}
753755
}
754756
}
755757
if v, found := p.p["deploymentplanner"]; found {
@@ -762,10 +764,11 @@ func (p *CreateVMFromBackupParams) toURLValues() url.Values {
762764
}
763765
}
764766
if v, found := p.p["dhcpoptionsnetworklist"]; found {
765-
m := v.(map[string]string)
766-
for i, k := range getSortedKeysFromMap(m) {
767-
u.Set(fmt.Sprintf("dhcpoptionsnetworklist[%d].key", i), k)
768-
u.Set(fmt.Sprintf("dhcpoptionsnetworklist[%d].value", i), m[k])
767+
l := v.([]map[string]string)
768+
for i, m := range l {
769+
for key, val := range m {
770+
u.Set(fmt.Sprintf("dhcpoptionsnetworklist[%d].%s", i, key), val)
771+
}
769772
}
770773
}
771774
if v, found := p.p["diskofferingid"]; found {
@@ -818,10 +821,11 @@ func (p *CreateVMFromBackupParams) toURLValues() url.Values {
818821
u.Set("ipaddress", v.(string))
819822
}
820823
if v, found := p.p["iptonetworklist"]; found {
821-
m := v.(map[string]string)
822-
for i, k := range getSortedKeysFromMap(m) {
823-
u.Set(fmt.Sprintf("iptonetworklist[%d].key", i), k)
824-
u.Set(fmt.Sprintf("iptonetworklist[%d].value", i), m[k])
824+
l := v.([]map[string]string)
825+
for i, m := range l {
826+
for key, val := range m {
827+
u.Set(fmt.Sprintf("iptonetworklist[%d].%s", i, key), val)
828+
}
825829
}
826830
}
827831
if v, found := p.p["keyboard"]; found {
@@ -856,10 +860,11 @@ func (p *CreateVMFromBackupParams) toURLValues() url.Values {
856860
u.Set("nicmultiqueuenumber", vv)
857861
}
858862
if v, found := p.p["nicnetworklist"]; found {
859-
m := v.(map[string]string)
860-
for i, k := range getSortedKeysFromMap(m) {
861-
u.Set(fmt.Sprintf("nicnetworklist[%d].nic", i), k)
862-
u.Set(fmt.Sprintf("nicnetworklist[%d].network", i), m[k])
863+
l := v.([]map[string]string)
864+
for i, m := range l {
865+
for key, val := range m {
866+
u.Set(fmt.Sprintf("nicnetworklist[%d].%s", i, key), val)
867+
}
863868
}
864869
}
865870
if v, found := p.p["nicpackedvirtqueuesenabled"]; found {
@@ -1164,7 +1169,7 @@ func (p *CreateVMFromBackupParams) GetDatadiskofferinglist() (map[string]string,
11641169
return value, ok
11651170
}
11661171

1167-
func (p *CreateVMFromBackupParams) SetDatadisksdetails(v map[string]string) {
1172+
func (p *CreateVMFromBackupParams) SetDatadisksdetails(v []map[string]string) {
11681173
if p.p == nil {
11691174
p.p = make(map[string]interface{})
11701175
}
@@ -1177,14 +1182,28 @@ func (p *CreateVMFromBackupParams) ResetDatadisksdetails() {
11771182
}
11781183
}
11791184

1180-
func (p *CreateVMFromBackupParams) GetDatadisksdetails() (map[string]string, bool) {
1185+
func (p *CreateVMFromBackupParams) GetDatadisksdetails() ([]map[string]string, bool) {
11811186
if p.p == nil {
11821187
p.p = make(map[string]interface{})
11831188
}
1184-
value, ok := p.p["datadisksdetails"].(map[string]string)
1189+
value, ok := p.p["datadisksdetails"].([]map[string]string)
11851190
return value, ok
11861191
}
11871192

1193+
func (p *CreateVMFromBackupParams) AddDatadisksdetails(item map[string]string) {
1194+
if p.p == nil {
1195+
p.p = make(map[string]interface{})
1196+
}
1197+
val, found := p.p["datadisksdetails"]
1198+
if !found {
1199+
p.p["datadisksdetails"] = []map[string]string{}
1200+
val = p.p["datadisksdetails"]
1201+
}
1202+
l := val.([]map[string]string)
1203+
l = append(l, item)
1204+
p.p["datadisksdetails"] = l
1205+
}
1206+
11881207
func (p *CreateVMFromBackupParams) SetDeploymentplanner(v string) {
11891208
if p.p == nil {
11901209
p.p = make(map[string]interface{})
@@ -1227,7 +1246,7 @@ func (p *CreateVMFromBackupParams) GetDetails() (map[string]string, bool) {
12271246
return value, ok
12281247
}
12291248

1230-
func (p *CreateVMFromBackupParams) SetDhcpoptionsnetworklist(v map[string]string) {
1249+
func (p *CreateVMFromBackupParams) SetDhcpoptionsnetworklist(v []map[string]string) {
12311250
if p.p == nil {
12321251
p.p = make(map[string]interface{})
12331252
}
@@ -1240,14 +1259,28 @@ func (p *CreateVMFromBackupParams) ResetDhcpoptionsnetworklist() {
12401259
}
12411260
}
12421261

1243-
func (p *CreateVMFromBackupParams) GetDhcpoptionsnetworklist() (map[string]string, bool) {
1262+
func (p *CreateVMFromBackupParams) GetDhcpoptionsnetworklist() ([]map[string]string, bool) {
12441263
if p.p == nil {
12451264
p.p = make(map[string]interface{})
12461265
}
1247-
value, ok := p.p["dhcpoptionsnetworklist"].(map[string]string)
1266+
value, ok := p.p["dhcpoptionsnetworklist"].([]map[string]string)
12481267
return value, ok
12491268
}
12501269

1270+
func (p *CreateVMFromBackupParams) AddDhcpoptionsnetworklist(item map[string]string) {
1271+
if p.p == nil {
1272+
p.p = make(map[string]interface{})
1273+
}
1274+
val, found := p.p["dhcpoptionsnetworklist"]
1275+
if !found {
1276+
p.p["dhcpoptionsnetworklist"] = []map[string]string{}
1277+
val = p.p["dhcpoptionsnetworklist"]
1278+
}
1279+
l := val.([]map[string]string)
1280+
l = append(l, item)
1281+
p.p["dhcpoptionsnetworklist"] = l
1282+
}
1283+
12511284
func (p *CreateVMFromBackupParams) SetDiskofferingid(v string) {
12521285
if p.p == nil {
12531286
p.p = make(map[string]interface{})
@@ -1542,7 +1575,7 @@ func (p *CreateVMFromBackupParams) GetIpaddress() (string, bool) {
15421575
return value, ok
15431576
}
15441577

1545-
func (p *CreateVMFromBackupParams) SetIptonetworklist(v map[string]string) {
1578+
func (p *CreateVMFromBackupParams) SetIptonetworklist(v []map[string]string) {
15461579
if p.p == nil {
15471580
p.p = make(map[string]interface{})
15481581
}
@@ -1555,14 +1588,28 @@ func (p *CreateVMFromBackupParams) ResetIptonetworklist() {
15551588
}
15561589
}
15571590

1558-
func (p *CreateVMFromBackupParams) GetIptonetworklist() (map[string]string, bool) {
1591+
func (p *CreateVMFromBackupParams) GetIptonetworklist() ([]map[string]string, bool) {
15591592
if p.p == nil {
15601593
p.p = make(map[string]interface{})
15611594
}
1562-
value, ok := p.p["iptonetworklist"].(map[string]string)
1595+
value, ok := p.p["iptonetworklist"].([]map[string]string)
15631596
return value, ok
15641597
}
15651598

1599+
func (p *CreateVMFromBackupParams) AddIptonetworklist(item map[string]string) {
1600+
if p.p == nil {
1601+
p.p = make(map[string]interface{})
1602+
}
1603+
val, found := p.p["iptonetworklist"]
1604+
if !found {
1605+
p.p["iptonetworklist"] = []map[string]string{}
1606+
val = p.p["iptonetworklist"]
1607+
}
1608+
l := val.([]map[string]string)
1609+
l = append(l, item)
1610+
p.p["iptonetworklist"] = l
1611+
}
1612+
15661613
func (p *CreateVMFromBackupParams) SetKeyboard(v string) {
15671614
if p.p == nil {
15681615
p.p = make(map[string]interface{})
@@ -1752,7 +1799,7 @@ func (p *CreateVMFromBackupParams) GetNicmultiqueuenumber() (int, bool) {
17521799
return value, ok
17531800
}
17541801

1755-
func (p *CreateVMFromBackupParams) SetNicnetworklist(v map[string]string) {
1802+
func (p *CreateVMFromBackupParams) SetNicnetworklist(v []map[string]string) {
17561803
if p.p == nil {
17571804
p.p = make(map[string]interface{})
17581805
}
@@ -1765,14 +1812,28 @@ func (p *CreateVMFromBackupParams) ResetNicnetworklist() {
17651812
}
17661813
}
17671814

1768-
func (p *CreateVMFromBackupParams) GetNicnetworklist() (map[string]string, bool) {
1815+
func (p *CreateVMFromBackupParams) GetNicnetworklist() ([]map[string]string, bool) {
17691816
if p.p == nil {
17701817
p.p = make(map[string]interface{})
17711818
}
1772-
value, ok := p.p["nicnetworklist"].(map[string]string)
1819+
value, ok := p.p["nicnetworklist"].([]map[string]string)
17731820
return value, ok
17741821
}
17751822

1823+
func (p *CreateVMFromBackupParams) AddNicnetworklist(item map[string]string) {
1824+
if p.p == nil {
1825+
p.p = make(map[string]interface{})
1826+
}
1827+
val, found := p.p["nicnetworklist"]
1828+
if !found {
1829+
p.p["nicnetworklist"] = []map[string]string{}
1830+
val = p.p["nicnetworklist"]
1831+
}
1832+
l := val.([]map[string]string)
1833+
l = append(l, item)
1834+
p.p["nicnetworklist"] = l
1835+
}
1836+
17761837
func (p *CreateVMFromBackupParams) SetNicpackedvirtqueuesenabled(v bool) {
17771838
if p.p == nil {
17781839
p.p = make(map[string]interface{})

0 commit comments

Comments
 (0)