-
Notifications
You must be signed in to change notification settings - Fork 132
/
types_vrack.go
131 lines (102 loc) · 3.28 KB
/
types_vrack.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
package ovh
import (
"time"
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
"github.com/ovh/terraform-provider-ovh/ovh/helpers"
)
type Vrack struct {
Description *string `json:"description"`
Name *string `json:"name"`
}
func (v Vrack) ToMap() map[string]interface{} {
obj := make(map[string]interface{})
if v.Description != nil {
obj["description"] = *v.Description
}
if v.Name != nil {
obj["name"] = *v.Name
}
return obj
}
type VrackUpdateOpts struct {
Description *string `json:"description,omitempty"`
Name *string `json:"name,omitempty"`
}
func (opts *VrackUpdateOpts) FromResource(d *schema.ResourceData) *VrackUpdateOpts {
opts.Description = helpers.GetNilStringPointerFromData(d, "description")
opts.Name = helpers.GetNilStringPointerFromData(d, "name")
return opts
}
type VrackIp struct {
Gateway string `json:"gateway"`
Ip string `json:"ip"`
Zone string `json:"zone"`
}
func (v VrackIp) ToMap() map[string]interface{} {
obj := make(map[string]interface{})
obj["gateway"] = v.Gateway
obj["ip"] = v.Ip
obj["zone"] = v.Zone
return obj
}
type VrackIpCreateOpts struct {
Block string `json:"block"`
}
func (opts *VrackIpCreateOpts) FromResource(d *schema.ResourceData) *VrackIpCreateOpts {
opts.Block = d.Get("block").(string)
return opts
}
type VrackDedicatedServerInterface struct {
Vrack string `json:"vrack"`
DedicatedServerInterface string `json:"dedicatedServerInterface"`
}
type VrackDedicatedServerInterfaceCreateOpts struct {
DedicatedServerInterface string `json:"dedicatedServerInterface"`
}
func (opts *VrackDedicatedServerInterfaceCreateOpts) FromResource(d *schema.ResourceData) *VrackDedicatedServerInterfaceCreateOpts {
opts.DedicatedServerInterface = d.Get("interface_id").(string)
return opts
}
type VrackDedicatedServer struct {
Vrack string `json:"vrack"`
DedicatedServer string `json:"dedicatedServer"`
}
type VrackDedicatedServerCreateOpts struct {
DedicatedServer string `json:"dedicatedServer"`
}
func (opts *VrackDedicatedServerCreateOpts) FromResource(d *schema.ResourceData) *VrackDedicatedServerCreateOpts {
opts.DedicatedServer = d.Get("server_id").(string)
return opts
}
type VrackCloudProject struct {
Vrack string `json:"vrack"`
Project string `json:"project"`
}
type VrackCloudProjectCreateOpts struct {
Project string `json:"project"`
}
func (opts *VrackCloudProjectCreateOpts) FromResource(d *schema.ResourceData) *VrackCloudProjectCreateOpts {
opts.Project = d.Get("project_id").(string)
return opts
}
type VrackIpLoadbalancing struct {
Vrack string `json:"vrack"`
IpLoadbalancing string `json:"ipLoadbalancing"`
}
type VrackIpLoadbalancingCreateOpts struct {
IpLoadbalancing string `json:"ipLoadbalancing"`
}
func (opts *VrackIpLoadbalancingCreateOpts) FromResource(d *schema.ResourceData) *VrackIpLoadbalancingCreateOpts {
opts.IpLoadbalancing = d.Get("ip_loadbalancing").(string)
return opts
}
type VrackTask struct {
Id int `json:"id"`
Function string `json:"function"`
TargetDomain string `json:"targetDomain"`
Status string `json:"status"`
ServiceName string `json:"serviceName"`
OrderId int `json:"orderId"`
LastUpdate time.Time `json:"lastUpdate"`
TodoDate time.Time `json:"TodoDate"`
}