Skip to content

Commit 3bbee0f

Browse files
author
Arthur Amstutz
committed
fix: Add missing fields in datasource ovh_dedicated_server
1 parent 10347c0 commit 3bbee0f

File tree

4 files changed

+74
-21
lines changed

4 files changed

+74
-21
lines changed

Diff for: ovh/data_dedicated_server.go

+48-14
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,11 @@ func dataSourceDedicatedServer() *schema.Resource {
1818
},
1919

2020
// Computed
21+
"availability_zone": {
22+
Type: schema.TypeString,
23+
Computed: true,
24+
Description: "Dedicated AZ localisation",
25+
},
2126
"urn": {
2227
Type: schema.TypeString,
2328
Computed: true,
@@ -34,35 +39,34 @@ func dataSourceDedicatedServer() *schema.Resource {
3439
"boot_script": {
3540
Type: schema.TypeString,
3641
Computed: true,
37-
Description: "",
42+
Description: "Ipxe script served on boot",
3843
},
3944
"commercial_range": {
4045
Type: schema.TypeString,
4146
Computed: true,
42-
Description: "dedicater server commercial range",
47+
Description: "Dedicated server commercial range",
4348
},
4449
"datacenter": {
4550
Type: schema.TypeString,
4651
Computed: true,
47-
Description: "dedicated datacenter localisation (bhs1,bhs2,...)",
52+
Description: "Dedicated datacenter localisation (bhs1,bhs2,...)",
4853
},
4954
"ip": {
5055
Type: schema.TypeString,
5156
Computed: true,
52-
Description: "dedicated server ip (IPv4)",
57+
Description: "Dedicated server ip (IPv4)",
5358
},
5459
"ips": {
5560
Type: schema.TypeList,
5661
Computed: true,
57-
Description: "dedicated server ip blocks",
62+
Description: "Dedicated server ip blocks",
5863
Elem: &schema.Schema{
5964
Type: schema.TypeString,
6065
},
6166
},
6267
"link_speed": {
63-
Type: schema.TypeInt,
64-
Computed: true,
65-
Description: "",
68+
Type: schema.TypeInt,
69+
Computed: true,
6670
},
6771
"monitoring": {
6872
Type: schema.TypeBool,
@@ -72,13 +76,27 @@ func dataSourceDedicatedServer() *schema.Resource {
7276
"name": {
7377
Type: schema.TypeString,
7478
Computed: true,
75-
Description: "dedicated server name",
79+
Description: "Dedicated server name",
80+
},
81+
"new_upgrade_system": {
82+
Type: schema.TypeBool,
83+
Computed: true,
84+
},
85+
"no_intervention": {
86+
Type: schema.TypeBool,
87+
Computed: true,
88+
Description: "Prevent datacenter intervention",
7689
},
7790
"os": {
7891
Type: schema.TypeString,
7992
Computed: true,
8093
Description: "Operating system",
8194
},
95+
"power_state": {
96+
Type: schema.TypeString,
97+
Computed: true,
98+
Description: "Power state of the server: poweroff, poweron",
99+
},
82100
"professional_use": {
83101
Type: schema.TypeBool,
84102
Computed: true,
@@ -89,15 +107,25 @@ func dataSourceDedicatedServer() *schema.Resource {
89107
Computed: true,
90108
Description: "",
91109
},
110+
"region": {
111+
Type: schema.TypeString,
112+
Computed: true,
113+
Description: "Dedicated region localisation",
114+
},
92115
"rescue_mail": {
93116
Type: schema.TypeString,
94117
Computed: true,
95-
Description: "",
118+
Description: "Custom email used to receive rescue credentials",
119+
},
120+
"rescue_ssh_key": {
121+
Type: schema.TypeString,
122+
Computed: true,
123+
Description: "Public SSH Key used in the rescue mode",
96124
},
97125
"reverse": {
98126
Type: schema.TypeString,
99127
Computed: true,
100-
Description: "dedicated server reverse",
128+
Description: "Dedicated server reverse",
101129
},
102130
"root_device": {
103131
Type: schema.TypeString,
@@ -107,12 +135,12 @@ func dataSourceDedicatedServer() *schema.Resource {
107135
"server_id": {
108136
Type: schema.TypeInt,
109137
Computed: true,
110-
Description: "your server id",
138+
Description: "Server id",
111139
},
112140
"state": {
113141
Type: schema.TypeString,
114142
Computed: true,
115-
Description: "error, hacked, hackedBlocked, ok",
143+
Description: "All states a Dedicated can be in: error, hacked, hackedBlocked, ok",
116144
},
117145
"support_level": {
118146
Type: schema.TypeString,
@@ -147,7 +175,7 @@ func dataSourceDedicatedServer() *schema.Resource {
147175
"server_name": {
148176
Type: schema.TypeString,
149177
Computed: true,
150-
Description: "server name",
178+
Description: "Server name",
151179
},
152180
"vrack": {
153181
Type: schema.TypeString,
@@ -228,6 +256,12 @@ func dataSourceDedicatedServerRead(d *schema.ResourceData, meta interface{}) err
228256
d.Set("server_id", ds.ServerId)
229257
d.Set("state", ds.State)
230258
d.Set("support_level", ds.SupportLevel)
259+
d.Set("availability_zone", ds.AvailabilityZone)
260+
d.Set("new_upgrade_system", ds.NewUpgradeSystem)
261+
d.Set("no_intervention", ds.NoIntervention)
262+
d.Set("power_state", ds.PowerState)
263+
d.Set("region", ds.Region)
264+
d.Set("rescue_ssh_key", ds.RescueSshKey)
231265

232266
dsIps := &[]string{}
233267
err = config.OVHClient.Get(

Diff for: ovh/data_dedicated_server_test.go

+14-7
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,10 @@ import (
1010

1111
func TestAccDedicatedServerDataSource_basic(t *testing.T) {
1212
dedicated_server := os.Getenv("OVH_DEDICATED_SERVER")
13-
config := fmt.Sprintf(testAccDedicatedServerDatasourceConfig_Basic, dedicated_server)
13+
config := fmt.Sprintf(`
14+
data "ovh_dedicated_server" "server" {
15+
service_name = "%s"
16+
}`, dedicated_server)
1417

1518
resource.Test(t, resource.TestCase{
1619
PreCheck: func() { testAccPreCheckDedicatedServer(t) },
@@ -33,14 +36,18 @@ func TestAccDedicatedServerDataSource_basic(t *testing.T) {
3336
"data.ovh_dedicated_server.server", "urn"),
3437
resource.TestCheckResourceAttrSet(
3538
"data.ovh_dedicated_server.server", "display_name"),
39+
resource.TestCheckResourceAttr(
40+
"data.ovh_dedicated_server.server", "region", "eu-west-sbg"),
41+
resource.TestCheckResourceAttr(
42+
"data.ovh_dedicated_server.server", "availability_zone", "eu-west-sbg-a"),
43+
resource.TestCheckResourceAttr(
44+
"data.ovh_dedicated_server.server", "new_upgrade_system", "true"),
45+
resource.TestCheckResourceAttr(
46+
"data.ovh_dedicated_server.server", "no_intervention", "false"),
47+
resource.TestCheckResourceAttr(
48+
"data.ovh_dedicated_server.server", "power_state", "poweron"),
3649
),
3750
},
3851
},
3952
})
4053
}
41-
42-
const testAccDedicatedServerDatasourceConfig_Basic = `
43-
data "ovh_dedicated_server" "server" {
44-
service_name = "%s"
45-
}
46-
`

Diff for: ovh/types_dedicated_server.go

+6
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import (
99
)
1010

1111
type DedicatedServer struct {
12+
AvailabilityZone string `json:"availabilityZone"`
1213
Name string `json:"name"`
1314
BootId int `json:"bootId"`
1415
BootScript string `json:"bootScript"`
@@ -17,10 +18,15 @@ type DedicatedServer struct {
1718
Ip string `json:"ip"`
1819
LinkSpeed int `json:"linkSpeed"`
1920
Monitoring bool `json:"monitoring"`
21+
NewUpgradeSystem bool `json:"newUpgradeSystem"`
22+
NoIntervention bool `json:"noIntervention"`
2023
Os string `json:"os"`
24+
PowerState string `json:"powerState"`
2125
ProfessionalUse bool `json:"professionalUse"`
2226
Rack string `json:"rack"`
27+
Region string `json:"region"`
2328
RescueMail string `json:"rescueMail"`
29+
RescueSshKey string `json:"rescueSshKey"`
2430
Reverse string `json:"reverse"`
2531
RootDevice string `json:"rootDevice"`
2632
ServerId int `json:"serverId"`

Diff for: website/docs/d/dedicated_server.html.markdown

+6
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ data "ovh_dedicated_server" "server" {
2323
`id` is set with the service_name of the dedicated server.
2424
In addition, the following attributes are exported:
2525

26+
* `availability_zone` - Dedicated AZ localisation
2627
* `boot_id` - Boot id of the server
2728
* `boot_script` - Boot script of the server
2829
* `urn` - URN of the dedicated server instance
@@ -33,11 +34,16 @@ In addition, the following attributes are exported:
3334
* `link_speed` - Link speed of the server
3435
* `monitoring` - Icmp monitoring state
3536
* `name` - Dedicated server name
37+
* `new_upgrade_system`
38+
* `no_intervention` - Prevent datacenter intervention
3639
* `display_name` - Dedicated server display name
3740
* `os` - Operating system
41+
* `power_state` - Power state of the server (poweroff, poweron)
3842
* `professional_use` - Does this server have professional use option
3943
* `rack` - Rack id of the server
44+
* `region` - Dedicated region localisation
4045
* `rescue_mail` - Rescue mail of the server
46+
* `rescue_ssh_key` - Public SSH Key used in the rescue mode
4147
* `reverse` - Dedicated server reverse
4248
* `root_device` - Root device of the server
4349
* `server_id` - Server id

0 commit comments

Comments
 (0)