Skip to content

Commit a751156

Browse files
committed
Add efiBootloaderPath for dedicated server resource (and dedicated
server update)
1 parent cc4b079 commit a751156

8 files changed

+31
-4
lines changed

ovh/data_dedicated_server.go

+6
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,11 @@ func dataSourceDedicatedServer() *schema.Resource {
4646
Computed: true,
4747
Description: "dedicated datacenter localisation (bhs1,bhs2,...)",
4848
},
49+
"efi_bootloader_path": {
50+
Type: schema.TypeString,
51+
Computed: true,
52+
Description: "path of the EFI bootloader",
53+
},
4954
"ip": {
5055
Type: schema.TypeString,
5156
Computed: true,
@@ -215,6 +220,7 @@ func dataSourceDedicatedServerRead(d *schema.ResourceData, meta interface{}) err
215220
d.Set("boot_script", ds.BootScript)
216221
d.Set("commercial_range", ds.CommercialRange)
217222
d.Set("datacenter", ds.Datacenter)
223+
d.Set("efi_bootloader_path", ds.EfiBootloaderPath)
218224
d.Set("ip", ds.Ip)
219225
d.Set("link_speed", ds.LinkSpeed)
220226
d.Set("monitoring", ds.Monitoring)

ovh/data_dedicated_server_test.go

+2
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ func TestAccDedicatedServerDataSource_basic(t *testing.T) {
2929
"data.ovh_dedicated_server.server", "vnis.0.server_name", dedicated_server),
3030
resource.TestCheckResourceAttr(
3131
"data.ovh_dedicated_server.server", "boot_script", ""),
32+
resource.TestCheckResourceAttrSet(
33+
"data.ovh_dedicated_server.server", "efi_bootloader_path"),
3234
resource.TestCheckResourceAttrSet(
3335
"data.ovh_dedicated_server.server", "urn"),
3436
resource.TestCheckResourceAttrSet(

ovh/resource_dedicated_server_update.go

+6
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,11 @@ func resourceDedicatedServerUpdate() *schema.Resource {
3434
Description: "The boot script of your dedicated server.",
3535
Optional: true,
3636
},
37+
"efi_bootloader_path": {
38+
Type: schema.TypeString,
39+
Description: "The path of the EFI bootloader.",
40+
Optional: true,
41+
},
3742
"monitoring": {
3843
Type: schema.TypeBool,
3944
Computed: true,
@@ -113,6 +118,7 @@ func resourceDedicatedServerUpdateRead(ctx context.Context, d *schema.ResourceDa
113118

114119
d.Set("boot_id", ds.BootId)
115120
d.Set("boot_script", ds.BootScript)
121+
d.Set("efi_bootloader_path", ds.EfiBootloaderPath)
116122
d.Set("monitoring", ds.Monitoring)
117123
d.Set("state", ds.State)
118124
d.Set("display_name", ds.DisplayName)

ovh/resource_dedicated_server_update_test.go

+6
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ func TestAccDedicatedServerUpdate_basic(t *testing.T) {
2626
"ovh_dedicated_server_update.server", "state", "ok"),
2727
resource.TestCheckResourceAttr(
2828
"ovh_dedicated_server_update.server", "boot_script", ""),
29+
resource.TestCheckResourceAttr(
30+
"ovh_dedicated_server_update.server", "efi_bootloader_path", "/efi/boot/bootx64.efi"),
2931
resource.TestCheckResourceAttr(
3032
"ovh_dedicated_server_update.server", "display_name", "An awesome display name"),
3133
),
@@ -40,6 +42,8 @@ func TestAccDedicatedServerUpdate_basic(t *testing.T) {
4042
"ovh_dedicated_server_update.server", "state", "ok"),
4143
resource.TestCheckResourceAttr(
4244
"ovh_dedicated_server_update.server", "boot_script", ""),
45+
resource.TestCheckResourceAttr(
46+
"ovh_dedicated_server_update.server", "efi_bootloader_path", "/efi/boot/bootx64.efi"),
4347
resource.TestCheckResourceAttr(
4448
"ovh_dedicated_server_update.server", "display_name", "An awesome display name restored"),
4549
),
@@ -76,6 +80,7 @@ resource ovh_dedicated_server_update "server" {
7680
monitoring = true
7781
state = "ok"
7882
display_name = "An awesome display name"
83+
efi_bootloader_path = "/efi/boot/bootx64.efi"
7984
}
8085
8186
output test {
@@ -95,6 +100,7 @@ resource ovh_dedicated_server_update "server" {
95100
monitoring = false
96101
state = "ok"
97102
display_name = "An awesome display name restored"
103+
efi_bootloader_path = "/efi/boot/bootx64.efi"
98104
}
99105
100106
output test {

ovh/types_dedicated_server.go

+7-4
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ type DedicatedServer struct {
1414
BootScript string `json:"bootScript"`
1515
CommercialRange string `json:"commercialRange"`
1616
Datacenter string `json:"datacenter"`
17+
EfiBootloaderPath string `json:"efiBootloaderPath"`
1718
Ip string `json:"ip"`
1819
LinkSpeed int `json:"linkSpeed"`
1920
Monitoring bool `json:"monitoring"`
@@ -40,15 +41,17 @@ func (ds DedicatedServer) String() string {
4041
}
4142

4243
type DedicatedServerUpdateOpts struct {
43-
BootId *int64 `json:"bootId,omitempty"`
44-
BootScript *string `json:"bootScript,omitempty"`
45-
Monitoring *bool `json:"monitoring,omitempty"`
46-
State *string `json:"state,omitempty"`
44+
BootId *int64 `json:"bootId,omitempty"`
45+
BootScript *string `json:"bootScript,omitempty"`
46+
EfiBootloaderPath *string `json:"efiBootloaderPath,omitempty"`
47+
Monitoring *bool `json:"monitoring,omitempty"`
48+
State *string `json:"state,omitempty"`
4749
}
4850

4951
func (opts *DedicatedServerUpdateOpts) FromResource(d *schema.ResourceData) *DedicatedServerUpdateOpts {
5052
opts.BootId = helpers.GetNilInt64PointerFromData(d, "boot_id")
5153
opts.BootScript = helpers.GetNilStringPointerFromData(d, "boot_script")
54+
opts.EfiBootloaderPath = helpers.GetNilStringPointerFromData(d, "efi_bootloader_path")
5255
opts.Monitoring = helpers.GetNilBoolPointerFromData(d, "monitoring")
5356
opts.State = helpers.GetNilStringPointerFromData(d, "state")
5457
return opts

website/docs/d/dedicated_server.html.markdown

+1
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ In addition, the following attributes are exported:
2828
* `urn` - URN of the dedicated server instance
2929
* `commercial_range` - Dedicated server commercial range
3030
* `datacenter` - Dedicated datacenter localisation (bhs1,bhs2,...)
31+
* `efi_bootloader_path` - Path of the EFI bootloader of the dedicated server
3132
* `ip` - Dedicated server ip (IPv4)
3233
* `ips` - Dedicated server ip blocks
3334
* `link_speed` - Link speed of the server

website/docs/r/dedicated_server.html.markdown

+1
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,7 @@ The `user_metadata` block supports many arguments, here is a non-exhaustive list
142142
* `tags` - Resource tags. Tags that were internally computed are prefixed with `ovh:`
143143
* `boot_id` - Boot id of the server
144144
* `boot_script` - Boot script of the server
145+
* `efi_bootloader_path` - Path of the EFI bootloader
145146
* `link_speed` - Link speed of the server
146147
* `monitoring` - Icmp monitoring state
147148
* `no_intervention` - Prevent datacenter intervention

website/docs/r/dedicated_server_update.html.markdown

+2
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ The following arguments are supported:
3636
* `service_name` - (Required) The service_name of your dedicated server.
3737
* `boot_id` - boot id of the server
3838
* `boot_script` - boot script of the server
39+
* `efi_bootloader_path` - path of the EFI bootloader
3940
* `monitoring` - Icmp monitoring state
4041
* `state` - error, hacked, hackedBlocked, ok
4142
* `display_name` - display name of the dedicated server
@@ -46,6 +47,7 @@ The following attributes are exported:
4647

4748
* `service_name` - See Argument Reference above.
4849
* `boot_id` - See Argument Reference above.
50+
* `efi_bootloader_path` - See Argument Reference above.
4951
* `monitoring` - See Argument Reference above.
5052
* `state` - See Argument Reference above.
5153
* `display_name` - See Argument Reference above.

0 commit comments

Comments
 (0)