-
Notifications
You must be signed in to change notification settings - Fork 33
/
softlayer_virtual_guest.go
144 lines (118 loc) · 5.04 KB
/
softlayer_virtual_guest.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
package data_types
import (
"time"
)
type SoftLayer_Virtual_Guest_Parameters struct {
Parameters []SoftLayer_Virtual_Guest `json:"parameters"`
}
type SoftLayer_Virtual_Guest struct {
AccountId int `json:"accountId,omitempty"`
CreateDate *time.Time `json:"createDate,omitempty"`
DedicatedAccountHostOnlyFlag bool `json:"dedicatedAccountHostOnlyFlag,omitempty"`
Domain string `json:"domain,omitempty"`
FullyQualifiedDomainName string `json:"fullyQualifiedDomainName,omitempty"`
Hostname string `json:"hostname,omitempty"`
Id int `json:"id,omitempty"`
LastPowerStateId int `json:"lastPowerStateId,omitempty"`
LastVerifiedDate *time.Time `json:"lastVerifiedDate,omitempty"`
MaxCpu int `json:"maxCpu,omitempty"`
MaxCpuUnits string `json:"maxCpuUnits,omitempty"`
MaxMemory int `json:"maxMemory,omitempty"`
MetricPollDate *time.Time `json:"metricPollDate,omitempty"`
ModifyDate *time.Time `json:"modifyDate,omitempty"`
Notes string `json:"notes,omitempty"`
PostInstallScriptUri string `json:"postInstallScriptUri,omitempty"`
PrivateNetworkOnlyFlag bool `json:"privateNetworkOnlyFlag,omitempty"`
StartCpus int `json:"startCpus,omitempty"`
StatusId int `json:"statusId,omitempty"`
Uuid string `json:"uuid,omitempty"`
GlobalIdentifier string `json:"globalIdentifier,omitempty"`
ManagedResourceFlag bool `json:"managedResourceFlag,omitempty"`
PrimaryBackendIpAddress string `json:"primaryBackendIpAddress,omitempty"`
PrimaryIpAddress string `json:"primaryIpAddress,omitempty"`
Location *SoftLayer_Location `json:"location"`
Datacenter *SoftLayer_Location `json:"datacenter"`
NetworkComponents []NetworkComponents `json:"networkComponents,omitempty"`
UserData []UserData `json:"userData,omitempty"`
OperatingSystem *SoftLayer_Operating_System `json:"operatingSystem"`
}
type SoftLayer_Operating_System struct {
Passwords []SoftLayer_Password `json:"passwords"`
}
type SoftLayer_Password struct {
Username string `json:"username"`
Password string `json:"password"`
}
type SoftLayer_Virtual_Guest_Template_Parameters struct {
Parameters []SoftLayer_Virtual_Guest_Template `json:"parameters"`
}
type SoftLayer_Virtual_Guest_Template struct {
//Required
Hostname string `json:"hostname"`
Domain string `json:"domain"`
StartCpus int `json:"startCpus"`
MaxMemory int `json:"maxMemory"`
Datacenter Datacenter `json:"datacenter"`
HourlyBillingFlag bool `json:"hourlyBillingFlag"`
LocalDiskFlag bool `json:"localDiskFlag"`
//Conditionally required
OperatingSystemReferenceCode string `json:"operatingSystemReferenceCode,omitempty"`
BlockDeviceTemplateGroup *BlockDeviceTemplateGroup `json:"blockDeviceTemplateGroup,omitempty"`
//Optional
DedicatedAccountHostOnlyFlag bool `json:"dedicatedAccountHostOnlyFlag,omitempty"`
NetworkComponents []NetworkComponents `json:"networkComponents,omitempty"`
PrivateNetworkOnlyFlag bool `json:"privateNetworkOnlyFlag,omitempty"`
PrimaryNetworkComponent *PrimaryNetworkComponent `json:"primaryNetworkComponent,omitempty"`
PrimaryBackendNetworkComponent *PrimaryBackendNetworkComponent `json:"primaryBackendNetworkComponent,omitempty"`
BlockDevices []BlockDevice `json:"blockDevices,omitempty"`
UserData []UserData `json:"userData,omitempty"`
SshKeys []SshKey `json:"sshKeys,omitempty"`
PostInstallScriptUri string `json:"postInstallScriptUri,omitempty"`
}
type Datacenter struct {
//Required
Name string `json:"name"`
}
type BlockDeviceTemplateGroup struct {
//Required
GlobalIdentifier string `json:"globalIdentifier,omitempty"`
}
type NetworkComponents struct {
//Required, defaults to 10
MaxSpeed int `json:"maxSpeed,omitempty"`
}
type NetworkVlan struct {
//Required
Id int `json:"id,omitempty"`
}
type PrimaryNetworkComponent struct {
//Required
NetworkVlan NetworkVlan `json:"networkVlan,omitempty"`
}
type PrimaryBackendNetworkComponent struct {
//Required
NetworkVlan NetworkVlan `json:"networkVlan,omitempty"`
}
type DiskImage struct {
//Required
Capacity int `json:"capacity,omitempty"`
}
type BlockDevice struct {
//Required
Device string `json:"device,omitempty"`
DiskImage DiskImage `json:"diskImage,omitempty"`
}
type UserData struct {
//Required
Value string `json:"value,omitempty"`
}
type SshKey struct {
//Required
Id int `json:"id,omitempty"`
}
type SoftLayer_Virtual_Guest_SetTags_Parameters struct {
Parameters []string `json:"parameters"`
}
type Image_Template_Config struct {
ImageTemplateId string `json:"imageTemplateId"`
}