Skip to content

Commit 3939ee8

Browse files
authored
Merge branch 'master' into redis/allow_2_nodes_in_cluster_size
2 parents 229d082 + 08ed204 commit 3939ee8

File tree

96 files changed

+231351
-302886
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

96 files changed

+231351
-302886
lines changed

docs/resources/vpc_gateway_network.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ The following arguments are supported:
139139
- `private_network_id` - (Required) The ID of the Private Network.
140140
- `dhcp_id` - (Required) The ID of the Public Gateway DHCP configuration. Only one of `dhcp_id`, `static_address` and `ipam_config` should be specified.
141141
- `enable_masquerade` - (Defaults to true) Whether masquerade (dynamic NAT) should be enabled on this GatewayNetwork
142-
- `enable_dhcp` - (Defaults to true) WWhether a DHCP configuration should be enabled on this GatewayNetwork. Requires a DHCP ID.
142+
- `enable_dhcp` - (Defaults to true) Whether a DHCP configuration should be enabled on this GatewayNetwork. Requires a DHCP ID.
143143
- `cleanup_dhcp` - (Defaults to false) Whether to remove DHCP configuration on this GatewayNetwork upon destroy. Requires DHCP ID.
144144
- `static_address` - Enable DHCP configration on this GatewayNetwork. Only one of `dhcp_id`, `static_address` and `ipam_config` should be specified.
145145
- `ipam_config` - Auto-configure the GatewayNetwork using Scaleway's IPAM (IP address management service). Only one of `dhcp_id`, `static_address` and `ipam_config` should be specified.

go.mod

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,11 @@ toolchain go1.23.1
66

77
require (
88
github.com/aws/aws-sdk-go v1.55.5
9+
github.com/aws/aws-sdk-go-v2 v1.32.3
10+
github.com/aws/aws-sdk-go-v2/config v1.28.1
11+
github.com/aws/aws-sdk-go-v2/credentials v1.17.42
12+
github.com/aws/aws-sdk-go-v2/service/s3 v1.66.2
13+
github.com/aws/smithy-go v1.22.0
914
github.com/bflad/tfproviderdocs v0.12.1
1015
github.com/bflad/tfproviderlint v0.30.0
1116
github.com/docker/docker v27.3.1+incompatible
@@ -23,9 +28,9 @@ require (
2328
github.com/nats-io/jwt/v2 v2.7.2
2429
github.com/nats-io/nats.go v1.37.0
2530
github.com/robfig/cron/v3 v3.0.1
26-
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.30.0.20241028153617-2a48843b5fcb
27-
github.com/stretchr/testify v1.10.0
28-
golang.org/x/crypto v0.29.0
31+
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.30.0.20241129094524-023aa8142bc1
32+
github.com/stretchr/testify v1.9.0
33+
golang.org/x/crypto v0.28.0
2934
gopkg.in/dnaeon/go-vcr.v3 v3.2.0
3035
)
3136

@@ -38,6 +43,19 @@ require (
3843
github.com/agext/levenshtein v1.2.3 // indirect
3944
github.com/apparentlymart/go-textseg/v15 v15.0.0 // indirect
4045
github.com/armon/go-radix v1.0.0 // indirect
46+
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.6 // indirect
47+
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.18 // indirect
48+
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.22 // indirect
49+
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.22 // indirect
50+
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 // indirect
51+
github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.22 // indirect
52+
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.0 // indirect
53+
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.3 // indirect
54+
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.3 // indirect
55+
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.3 // indirect
56+
github.com/aws/aws-sdk-go-v2/service/sso v1.24.3 // indirect
57+
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.3 // indirect
58+
github.com/aws/aws-sdk-go-v2/service/sts v1.32.3 // indirect
4159
github.com/bflad/gopaniccheck v0.1.0 // indirect
4260
github.com/bgentry/speakeasy v0.1.0 // indirect
4361
github.com/bmatcuk/doublestar v1.3.4 // indirect

go.sum

Lines changed: 44 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,42 @@ github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgI
2525
github.com/aws/aws-sdk-go v1.31.9/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0=
2626
github.com/aws/aws-sdk-go v1.55.5 h1:KKUZBfBoyqy5d3swXyiC7Q76ic40rYcbqH7qjh59kzU=
2727
github.com/aws/aws-sdk-go v1.55.5/go.mod h1:eRwEWoyTWFMVYVQzKMNHWP5/RV4xIUGMQfXQHfHkpNU=
28+
github.com/aws/aws-sdk-go-v2 v1.32.3 h1:T0dRlFBKcdaUPGNtkBSwHZxrtis8CQU17UpNBZYd0wk=
29+
github.com/aws/aws-sdk-go-v2 v1.32.3/go.mod h1:2SK5n0a2karNTv5tbP1SjsX0uhttou00v/HpXKM1ZUo=
30+
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.6 h1:pT3hpW0cOHRJx8Y0DfJUEQuqPild8jRGmSFmBgvydr0=
31+
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.6/go.mod h1:j/I2++U0xX+cr44QjHay4Cvxj6FUbnxrgmqN3H1jTZA=
32+
github.com/aws/aws-sdk-go-v2/config v1.28.1 h1:oxIvOUXy8x0U3fR//0eq+RdCKimWI900+SV+10xsCBw=
33+
github.com/aws/aws-sdk-go-v2/config v1.28.1/go.mod h1:bRQcttQJiARbd5JZxw6wG0yIK3eLeSCPdg6uqmmlIiI=
34+
github.com/aws/aws-sdk-go-v2/credentials v1.17.42 h1:sBP0RPjBU4neGpIYyx8mkU2QqLPl5u9cmdTWVzIpHkM=
35+
github.com/aws/aws-sdk-go-v2/credentials v1.17.42/go.mod h1:FwZBfU530dJ26rv9saAbxa9Ej3eF/AK0OAY86k13n4M=
36+
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.18 h1:68jFVtt3NulEzojFesM/WVarlFpCaXLKaBxDpzkQ9OQ=
37+
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.18/go.mod h1:Fjnn5jQVIo6VyedMc0/EhPpfNlPl7dHV916O6B+49aE=
38+
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.22 h1:Jw50LwEkVjuVzE1NzkhNKkBf9cRN7MtE1F/b2cOKTUM=
39+
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.22/go.mod h1:Y/SmAyPcOTmpeVaWSzSKiILfXTVJwrGmYZhcRbhWuEY=
40+
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.22 h1:981MHwBaRZM7+9QSR6XamDzF/o7ouUGxFzr+nVSIhrs=
41+
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.22/go.mod h1:1RA1+aBEfn+CAB/Mh0MB6LsdCYCnjZm7tKXtnk499ZQ=
42+
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1 h1:VaRN3TlFdd6KxX1x3ILT5ynH6HvKgqdiXoTxAF4HQcQ=
43+
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.1/go.mod h1:FbtygfRFze9usAadmnGJNc8KsP346kEe+y2/oyhGAGc=
44+
github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.22 h1:yV+hCAHZZYJQcwAaszoBNwLbPItHvApxT0kVIw6jRgs=
45+
github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.22/go.mod h1:kbR1TL8llqB1eGnVbybcA4/wgScxdylOdyAd51yxPdw=
46+
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.0 h1:TToQNkvGguu209puTojY/ozlqy2d/SFNcoLIqTFi42g=
47+
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.0/go.mod h1:0jp+ltwkf+SwG2fm/PKo8t4y8pJSgOCO4D8Lz3k0aHQ=
48+
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.3 h1:kT6BcZsmMtNkP/iYMcRG+mIEA/IbeiUimXtGmqF39y0=
49+
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.4.3/go.mod h1:Z8uGua2k4PPaGOYn66pK02rhMrot3Xk3tpBuUFPomZU=
50+
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.3 h1:qcxX0JYlgWH3hpPUnd6U0ikcl6LLA9sLkXE2w1fpMvY=
51+
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.3/go.mod h1:cLSNEmI45soc+Ef8K/L+8sEA3A3pYFEYf5B5UI+6bH4=
52+
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.3 h1:ZC7Y/XgKUxwqcdhO5LE8P6oGP1eh6xlQReWNKfhvJno=
53+
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.3/go.mod h1:WqfO7M9l9yUAw0HcHaikwRd/H6gzYdz7vjejCA5e2oY=
54+
github.com/aws/aws-sdk-go-v2/service/s3 v1.66.2 h1:p9TNFL8bFUMd+38YIpTAXpoxyz0MxC7FlbFEH4P4E1U=
55+
github.com/aws/aws-sdk-go-v2/service/s3 v1.66.2/go.mod h1:fNjyo0Coen9QTwQLWeV6WO2Nytwiu+cCcWaTdKCAqqE=
56+
github.com/aws/aws-sdk-go-v2/service/sso v1.24.3 h1:UTpsIf0loCIWEbrqdLb+0RxnTXfWh2vhw4nQmFi4nPc=
57+
github.com/aws/aws-sdk-go-v2/service/sso v1.24.3/go.mod h1:FZ9j3PFHHAR+w0BSEjK955w5YD2UwB/l/H0yAK3MJvI=
58+
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.3 h1:2YCmIXv3tmiItw0LlYf6v7gEHebLY45kBEnPezbUKyU=
59+
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.28.3/go.mod h1:u19stRyNPxGhj6dRm+Cdgu6N75qnbW7+QN0q0dsAk58=
60+
github.com/aws/aws-sdk-go-v2/service/sts v1.32.3 h1:wVnQ6tigGsRqSWDEEyH6lSAJ9OyFUsSnbaUWChuSGzs=
61+
github.com/aws/aws-sdk-go-v2/service/sts v1.32.3/go.mod h1:VZa9yTFyj4o10YGsmDO4gbQJUvvhY72fhumT8W4LqsE=
62+
github.com/aws/smithy-go v1.22.0 h1:uunKnWlcoL3zO7q+gG2Pk53joueEOsnNB28QdMsmiMM=
63+
github.com/aws/smithy-go v1.22.0/go.mod h1:irrKGvNn1InZwb2d7fkIRNucdfwR8R+Ts3wxYa/cJHg=
2864
github.com/bflad/gopaniccheck v0.1.0 h1:tJftp+bv42ouERmUMWLoUn/5bi/iQZjHPznM00cP/bU=
2965
github.com/bflad/gopaniccheck v0.1.0/go.mod h1:ZCj2vSr7EqVeDaqVsWN4n2MwdROx1YL+LFo47TSWtsA=
3066
github.com/bflad/tfproviderdocs v0.12.1 h1:MlHjrSa+pz1RxaCdvUWj+ZI5IwKMF7tjL4JTLg+dlTs=
@@ -242,8 +278,8 @@ github.com/posener/complete v1.2.3 h1:NP0eAhjcjImqslEwo/1hq7gpajME0fTLTezBKDqfXq
242278
github.com/posener/complete v1.2.3/go.mod h1:WZIdtGGp+qx0sLrYKtIRAruyNpv6hFCicSgv7Sy7s/s=
243279
github.com/robfig/cron/v3 v3.0.1 h1:WdRxkvbJztn8LMz/QEvLN5sBU+xKpSqwwUO1Pjr4qDs=
244280
github.com/robfig/cron/v3 v3.0.1/go.mod h1:eQICP3HwyT7UooqI/z+Ov+PtYAWygg1TEWWzGIFLtro=
245-
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.30.0.20241028153617-2a48843b5fcb h1:OsRpbw60numCy/+3FS7UhZzkdiTu6OZwq29bb4b3gNo=
246-
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.30.0.20241028153617-2a48843b5fcb/go.mod h1:3jrRJM7638J+P33hKy9MBvfOBxNo8pEGNQQoIv65Ihg=
281+
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.30.0.20241129094524-023aa8142bc1 h1:0OKzyRfLH+dWSPOBvwbhNcBTbEiuNkv8mdYGev1+/1g=
282+
github.com/scaleway/scaleway-sdk-go v1.0.0-beta.30.0.20241129094524-023aa8142bc1/go.mod h1:kAoejOVBg1E/aVAR6IwKWEmbLCEg2IXklzPAkxzAaXA=
247283
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8=
248284
github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4=
249285
github.com/shopspring/decimal v1.2.0 h1:abSATXmQEYyShuxI4/vyW3tV1MrKAJzCZ/0zLUXYbsQ=
@@ -261,8 +297,8 @@ github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81P
261297
github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA=
262298
github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
263299
github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals=
264-
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
265-
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
300+
github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
301+
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
266302
github.com/vmihailenco/msgpack v3.3.3+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk=
267303
github.com/vmihailenco/msgpack v4.0.4+incompatible h1:dSLoQfGFAo3F6OoNhwUmLwVgaUXK79GlxNBwueZn0xI=
268304
github.com/vmihailenco/msgpack v4.0.4+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk=
@@ -306,8 +342,8 @@ golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPh
306342
golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
307343
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
308344
golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
309-
golang.org/x/crypto v0.29.0 h1:L5SG1JTTXupVV3n6sUqMTeWbjAyfPwoda2DLX8J8FrQ=
310-
golang.org/x/crypto v0.29.0/go.mod h1:+F4F4N5hv6v38hfeYwTdx20oUvLLc+QfrE9Ax9HtgRg=
345+
golang.org/x/crypto v0.28.0 h1:GBDwsMXVQi34v5CCYUm2jkJvu4cbtru2U4TN2PSyQnw=
346+
golang.org/x/crypto v0.28.0/go.mod h1:rmgy+3RHxRZMyY0jjAJShp2zgEdOqj2AO7U0pYmeQ7U=
311347
golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=
312348
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
313349
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
@@ -353,8 +389,8 @@ golang.org/x/sys v0.27.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
353389
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
354390
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
355391
golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc=
356-
golang.org/x/term v0.26.0 h1:WEQa6V3Gja/BhNxg540hBip/kkaYtRg3cxg4oXSw4AU=
357-
golang.org/x/term v0.26.0/go.mod h1:Si5m1o57C5nBNQo5z1iq+XDijt21BDBDp2bK0QI8e3E=
392+
golang.org/x/term v0.25.0 h1:WtHI/ltw4NvSUig5KARz9h521QvRC8RmF/cuYqifU24=
393+
golang.org/x/term v0.25.0/go.mod h1:RPyXicDX+6vLxogjjRxjgD2TKtmAO6NZBsBRfrOLu7M=
358394
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
359395
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
360396
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=

internal/services/baremetal/server.go

Lines changed: 37 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package baremetal
22

33
import (
44
"context"
5+
"encoding/json"
56
"fmt"
67

78
"github.com/hashicorp/go-cty/cty"
@@ -255,7 +256,13 @@ If this behaviour is wanted, please set 'reinstall_on_ssh_key_changes' argument
255256
},
256257
},
257258
},
259+
"partitioning": {
260+
Type: schema.TypeString,
261+
Optional: true,
262+
Description: "The partitioning schema in json format",
263+
},
258264
},
265+
259266
CustomizeDiff: customdiff.Sequence(
260267
cdf.LocalityCheck("private_network.#.id"),
261268
customDiffPrivateNetworkOption(),
@@ -313,51 +320,51 @@ func ResourceServerCreate(ctx context.Context, d *schema.ResourceData, m interfa
313320
offerID = zonal.NewID(zone, o.ID)
314321
}
315322

316-
if !d.Get("install_config_afterward").(bool) {
317-
if diags := validateInstallConfig(ctx, d, m); len(diags) > 0 {
318-
return diags
319-
}
320-
}
321-
322-
server, err := api.CreateServer(&baremetal.CreateServerRequest{
323+
req := &baremetal.CreateServerRequest{
323324
Zone: zone,
324325
Name: types.ExpandOrGenerateString(d.Get("name"), "bm"),
325326
ProjectID: types.ExpandStringPtr(d.Get("project_id")),
326327
Description: d.Get("description").(string),
327328
OfferID: offerID.ID,
328329
Tags: types.ExpandStrings(d.Get("tags")),
329-
}, scw.WithContext(ctx))
330-
if err != nil {
331-
return diag.FromErr(err)
332330
}
333331

334-
d.SetId(zonal.NewID(server.Zone, server.ID).String())
332+
partitioningSchema := baremetal.Schema{}
333+
if file, ok := d.GetOk("partitioning"); ok || !d.Get("install_config_afterward").(bool) {
334+
if diags := validateInstallConfig(ctx, d, m); len(diags) > 0 {
335+
return diags
336+
}
337+
if file != "" {
338+
todecode, _ := file.(string)
339+
err = json.Unmarshal([]byte(todecode), &partitioningSchema)
340+
if err != nil {
341+
return diag.FromErr(err)
342+
}
343+
}
344+
req.Install = &baremetal.CreateServerRequestInstall{
345+
OsID: zonal.ExpandID(d.Get("os")).ID,
346+
Hostname: d.Get("hostname").(string),
347+
SSHKeyIDs: types.ExpandStrings(d.Get("ssh_key_ids")),
348+
User: types.ExpandStringPtr(d.Get("user")),
349+
Password: types.ExpandStringPtr(d.Get("password")),
350+
PartitioningSchema: &partitioningSchema,
351+
}
352+
}
335353

336-
_, err = waitForServer(ctx, api, zone, server.ID, d.Timeout(schema.TimeoutCreate))
354+
server, err := api.CreateServer(req, scw.WithContext(ctx))
337355
if err != nil {
338356
return diag.FromErr(err)
339357
}
340358

341-
if !d.Get("install_config_afterward").(bool) {
342-
_, err = api.InstallServer(&baremetal.InstallServerRequest{
343-
Zone: server.Zone,
344-
ServerID: server.ID,
345-
OsID: zonal.ExpandID(d.Get("os")).ID,
346-
Hostname: types.ExpandStringWithDefault(d.Get("hostname"), server.Name),
347-
SSHKeyIDs: types.ExpandStrings(d.Get("ssh_key_ids")),
348-
User: types.ExpandStringPtr(d.Get("user")),
349-
Password: types.ExpandStringPtr(d.Get("password")),
350-
ServiceUser: types.ExpandStringPtr(d.Get("service_user")),
351-
ServicePassword: types.ExpandStringPtr(d.Get("service_password")),
352-
}, scw.WithContext(ctx))
353-
if err != nil {
354-
return diag.FromErr(err)
355-
}
359+
d.SetId(zonal.NewID(server.Zone, server.ID).String())
356360

361+
if d.Get("install_config_afterward").(bool) {
362+
_, err = waitForServer(ctx, api, zone, server.ID, d.Timeout(schema.TimeoutCreate))
363+
} else {
357364
_, err = waitForServerInstall(ctx, api, zone, server.ID, d.Timeout(schema.TimeoutCreate))
358-
if err != nil {
359-
return diag.FromErr(err)
360-
}
365+
}
366+
if err != nil {
367+
return diag.FromErr(err)
361368
}
362369

363370
options, optionsExist := d.GetOk("options")

0 commit comments

Comments
 (0)