Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 13 additions & 12 deletions internal/services/baremetal/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -382,31 +382,32 @@ func ResourceServerCreate(ctx context.Context, d *schema.ResourceData, m any) di
req.UserData = &cloudInitStr
}

partitioningSchema := baremetal.Schema{}

if file, ok := d.GetOk("partitioning"); ok || !d.Get("install_config_afterward").(bool) {
if diags := validateInstallConfig(ctx, d, m); len(diags) > 0 {
return diags
}

req.Install = &baremetal.CreateServerRequestInstall{
OsID: zonal.ExpandID(d.Get("os")).ID,
Hostname: d.Get("hostname").(string),
SSHKeyIDs: types.ExpandStrings(d.Get("ssh_key_ids")),
User: types.ExpandStringPtr(d.Get("user")),
Password: types.ExpandStringPtr(d.Get("password")),
ServicePassword: types.ExpandStringPtr(d.Get("service_password")),
ServiceUser: types.ExpandStringPtr(d.Get("service_user")),
}

partitioningSchema := baremetal.Schema{}

if file != "" {
todecode, _ := file.(string)

err = json.Unmarshal([]byte(todecode), &partitioningSchema)
if err != nil {
return diag.FromErr(err)
}
}

req.Install = &baremetal.CreateServerRequestInstall{
OsID: zonal.ExpandID(d.Get("os")).ID,
Hostname: d.Get("hostname").(string),
SSHKeyIDs: types.ExpandStrings(d.Get("ssh_key_ids")),
User: types.ExpandStringPtr(d.Get("user")),
Password: types.ExpandStringPtr(d.Get("password")),
PartitioningSchema: &partitioningSchema,
ServicePassword: types.ExpandStringPtr(d.Get("service_password")),
ServiceUser: types.ExpandStringPtr(d.Get("service_user")),
req.Install.PartitioningSchema = &partitioningSchema
}
}

Expand Down
2,752 changes: 1,425 additions & 1,327 deletions internal/services/baremetal/testdata/data-source-server-basic.cassette.yaml

Large diffs are not rendered by default.

Large diffs are not rendered by default.

2,986 changes: 1,199 additions & 1,787 deletions internal/services/baremetal/testdata/server-add-option.cassette.yaml

Large diffs are not rendered by default.

3,280 changes: 1,836 additions & 1,444 deletions internal/services/baremetal/testdata/server-add-private-network.cassette.yaml

Large diffs are not rendered by default.

Large diffs are not rendered by default.

2,846 changes: 1,227 additions & 1,619 deletions internal/services/baremetal/testdata/server-basic.cassette.yaml

Large diffs are not rendered by default.

Large diffs are not rendered by default.

2,236 changes: 1,216 additions & 1,020 deletions internal/services/baremetal/testdata/server-cloud-init.cassette.yaml

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

3,577 changes: 1,421 additions & 2,156 deletions internal/services/baremetal/testdata/server-with-ipam-private-network.cassette.yaml

Large diffs are not rendered by default.

21 changes: 12 additions & 9 deletions internal/services/flexibleip/ip_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,10 @@ import (
"github.com/scaleway/terraform-provider-scaleway/v2/internal/services/flexibleip"
)

const SSHKeyFlexibleIP = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM7HUxRyQtB2rnlhQUcbDGCZcTJg7OvoznOiyC9W6IxH [email protected]"
const (
SSHKeyFlexibleIP = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM7HUxRyQtB2rnlhQUcbDGCZcTJg7OvoznOiyC9W6IxH [email protected]"
BaremetalOffer = "EM-B220E-NVME"
)

var DestroyWaitTimeout = 3 * time.Minute

Expand Down Expand Up @@ -140,7 +143,7 @@ func TestAccFlexibleIP_CreateAndAttachToBaremetalServer(t *testing.T) {
}

data "scaleway_baremetal_offer" "my_offer" {
name = "EM-A115X-SSD"
name = "%s"
zone = "fr-par-1"
}

Expand All @@ -157,7 +160,7 @@ func TestAccFlexibleIP_CreateAndAttachToBaremetalServer(t *testing.T) {

ssh_key_ids = [ scaleway_iam_ssh_key.main.id ]
}
`, SSHKeyName, SSHKeyFlexibleIP, name),
`, BaremetalOffer, SSHKeyName, SSHKeyFlexibleIP, name),
},
{
Config: fmt.Sprintf(`
Expand All @@ -168,7 +171,7 @@ func TestAccFlexibleIP_CreateAndAttachToBaremetalServer(t *testing.T) {
}

data "scaleway_baremetal_offer" "my_offer" {
name = "EM-A115X-SSD"
name = "%s"
zone = "fr-par-1"
}

Expand All @@ -190,7 +193,7 @@ func TestAccFlexibleIP_CreateAndAttachToBaremetalServer(t *testing.T) {
server_id = scaleway_baremetal_server.base.id
zone = "fr-par-1"
}
`, SSHKeyName, SSHKeyFlexibleIP, name),
`, BaremetalOffer, SSHKeyName, SSHKeyFlexibleIP, name),
Check: resource.ComposeTestCheckFunc(
testAccCheckFlexibleIPExists(tt, "scaleway_flexible_ip.base"),
testAccCheckFlexibleIPAttachedToBaremetalServer(tt, "scaleway_flexible_ip.base", "scaleway_baremetal_server.base"),
Expand Down Expand Up @@ -234,7 +237,7 @@ func TestAccFlexibleIP_AttachAndDetachFromBaremetalServer(t *testing.T) {
}

data "scaleway_baremetal_offer" "my_offer" {
name = "EM-A115X-SSD"
name = "%s"
zone = "fr-par-1"
}

Expand All @@ -251,7 +254,7 @@ func TestAccFlexibleIP_AttachAndDetachFromBaremetalServer(t *testing.T) {

ssh_key_ids = [ scaleway_iam_ssh_key.main.id ]
}
`, SSHKeyName, SSHKeyFlexibleIP, name),
`, BaremetalOffer, SSHKeyName, SSHKeyFlexibleIP, name),
},
{
Config: fmt.Sprintf(`
Expand All @@ -262,7 +265,7 @@ func TestAccFlexibleIP_AttachAndDetachFromBaremetalServer(t *testing.T) {
}

data "scaleway_baremetal_offer" "my_offer" {
name = "EM-A115X-SSD"
name = "%s"
zone = "fr-par-1"
}

Expand All @@ -284,7 +287,7 @@ func TestAccFlexibleIP_AttachAndDetachFromBaremetalServer(t *testing.T) {
server_id = scaleway_baremetal_server.base.id
zone = "fr-par-1"
}
`, SSHKeyName, SSHKeyFlexibleIP, name),
`, BaremetalOffer, SSHKeyName, SSHKeyFlexibleIP, name),
Check: resource.ComposeTestCheckFunc(
testAccCheckFlexibleIPExists(tt, "scaleway_flexible_ip.base"),
testAccCheckFlexibleIPAttachedToBaremetalServer(tt, "scaleway_flexible_ip.base", "scaleway_baremetal_server.base"),
Expand Down
Loading
Loading