@@ -57,7 +57,7 @@ func TestAccEasyPartitioningDataSource_Basic(t *testing.T) {
5757 data "scaleway_baremetal_easy_partitioning" "test" {
5858 offer_id = data.scaleway_baremetal_offer.my_offer.offer_id
5959 os_id = data.scaleway_baremetal_os.my_os.os_id
60- swap = false
60+ swap = true
6161 ext_4_mountpoint = "%s"
6262 }
6363
@@ -90,6 +90,140 @@ func TestAccEasyPartitioningDataSource_Basic(t *testing.T) {
9090 })
9191}
9292
93+ func TestAccEasyPartitioningDataSource_WithoutExtraPart (t * testing.T ) {
94+ tt := acctest .NewTestTools (t )
95+ defer tt .Cleanup ()
96+
97+ sshKeyName := "TestAccEasyPartitioningDataSource_WithoutExtraPart"
98+ serverName := "TestAccEasyPartitioningDataSource_WithoutExtraPart"
99+
100+ resource .ParallelTest (t , resource.TestCase {
101+ PreCheck : func () { acctest .PreCheck (t ) },
102+ ProviderFactories : tt .ProviderFactories ,
103+ CheckDestroy : resource .ComposeTestCheckFunc (
104+ baremetalchecks .CheckServerDestroy (tt ),
105+ ),
106+ Steps : []resource.TestStep {
107+ {
108+ Config : fmt .Sprintf (`
109+ data "scaleway_baremetal_offer" "my_offer" {
110+ zone = "%s"
111+ name = "%s"
112+ }
113+
114+ data "scaleway_baremetal_os" "my_os" {
115+ zone = "%s"
116+ name = "Ubuntu"
117+ version = "22.04 LTS (Jammy Jellyfish)"
118+ }
119+
120+ resource "scaleway_iam_ssh_key" "main" {
121+ name = "%s"
122+ public_key = "%s"
123+ }
124+
125+ data "scaleway_baremetal_easy_partitioning" "test" {
126+ offer_id = data.scaleway_baremetal_offer.my_offer.offer_id
127+ os_id = data.scaleway_baremetal_os.my_os.os_id
128+ swap = true
129+ extra_partition = false
130+ }
131+
132+ resource "scaleway_baremetal_server" "base" {
133+ name = "%s"
134+ zone = "%s"
135+ description = "test a description"
136+ offer = data.scaleway_baremetal_offer.my_offer.offer_id
137+ os = data.scaleway_baremetal_os.my_os.os_id
138+ partitioning = data.scaleway_baremetal_easy_partitioning.test.json_partition
139+ tags = ["terraform-test", "scaleway_baremetal_server", "minimal", "edited"]
140+ ssh_key_ids = [scaleway_iam_ssh_key.main.id]
141+ }
142+ ` ,
143+ Zone ,
144+ offerNameEasyPartitioning ,
145+ Zone ,
146+ sshKeyName ,
147+ SSHKeyBaremetal ,
148+ serverName ,
149+ Zone ,
150+ ),
151+ Check : resource .ComposeTestCheckFunc (
152+ testAccCheckBaremetalServerExists (tt , "scaleway_baremetal_server.base" ),
153+ testAccCheckEasyPartitioning (tt , "scaleway_baremetal_server.base" , "data.scaleway_baremetal_easy_partitioning.test" ),
154+ ),
155+ },
156+ },
157+ })
158+ }
159+
160+ func TestAccEasyPartitioningDataSource_WithoutSwapAndExtraPart (t * testing.T ) {
161+ tt := acctest .NewTestTools (t )
162+ defer tt .Cleanup ()
163+
164+ sshKeyName := "TestAccEasyPartitioningDataSource_Basic"
165+ serverName := "TestAccEasyPartitioningDataSource_Basic"
166+
167+ resource .ParallelTest (t , resource.TestCase {
168+ PreCheck : func () { acctest .PreCheck (t ) },
169+ ProviderFactories : tt .ProviderFactories ,
170+ CheckDestroy : resource .ComposeTestCheckFunc (
171+ baremetalchecks .CheckServerDestroy (tt ),
172+ ),
173+ Steps : []resource.TestStep {
174+ {
175+ Config : fmt .Sprintf (`
176+ data "scaleway_baremetal_offer" "my_offer" {
177+ zone = "%s"
178+ name = "%s"
179+ }
180+
181+ data "scaleway_baremetal_os" "my_os" {
182+ zone = "%s"
183+ name = "Ubuntu"
184+ version = "22.04 LTS (Jammy Jellyfish)"
185+ }
186+
187+ resource "scaleway_iam_ssh_key" "main" {
188+ name = "%s"
189+ public_key = "%s"
190+ }
191+
192+ data "scaleway_baremetal_easy_partitioning" "test" {
193+ offer_id = data.scaleway_baremetal_offer.my_offer.offer_id
194+ os_id = data.scaleway_baremetal_os.my_os.os_id
195+ swap = false
196+ extra_partition = false
197+ }
198+
199+ resource "scaleway_baremetal_server" "base" {
200+ name = "%s"
201+ zone = "%s"
202+ description = "test a description"
203+ offer = data.scaleway_baremetal_offer.my_offer.offer_id
204+ os = data.scaleway_baremetal_os.my_os.os_id
205+ partitioning = data.scaleway_baremetal_easy_partitioning.test.json_partition
206+ tags = ["terraform-test", "scaleway_baremetal_server", "minimal", "edited"]
207+ ssh_key_ids = [scaleway_iam_ssh_key.main.id]
208+ }
209+ ` ,
210+ Zone ,
211+ offerNameEasyPartitioning ,
212+ Zone ,
213+ sshKeyName ,
214+ SSHKeyBaremetal ,
215+ serverName ,
216+ Zone ,
217+ ),
218+ Check : resource .ComposeTestCheckFunc (
219+ testAccCheckBaremetalServerExists (tt , "scaleway_baremetal_server.base" ),
220+ testAccCheckEasyPartitioning (tt , "scaleway_baremetal_server.base" , "data.scaleway_baremetal_easy_partitioning.test" ),
221+ ),
222+ },
223+ },
224+ })
225+ }
226+
93227func TestAccEasyPartitioningDataSource_WithAlternateOffer (t * testing.T ) {
94228 tt := acctest .NewTestTools (t )
95229 defer tt .Cleanup ()
@@ -271,7 +405,15 @@ func TestAccEasyPartitioningDataSource_IncompatibleOffer(t *testing.T) {
271405
272406 tags = [ "terraform-test", "scaleway_baremetal_server", "minimal", "edited" ]
273407 ssh_key_ids = [ scaleway_iam_ssh_key.main.id ]
274- }` , Zone , incompatibleOfferName , Zone , SSHKeyName , SSHKeyBaremetal , mountpoint , name , Zone ),
408+ }` , Zone ,
409+ incompatibleOfferName ,
410+ Zone ,
411+ SSHKeyName ,
412+ SSHKeyBaremetal ,
413+ mountpoint ,
414+ name ,
415+ Zone ,
416+ ),
275417 ExpectError : regexp .MustCompile ("Custom Partitioning not supported" ),
276418 },
277419 },
0 commit comments