@@ -189,3 +189,91 @@ resource "fastly_service_vcl" "foo" {
189189 },
190190 })
191191}
192+
193+ func TestAccFastlyServiceVCLProductEnablement_ngwafUpdate (t * testing.T ) {
194+ var service gofastly.ServiceDetail
195+ serviceName := fmt .Sprintf ("tf-test-%s" , acctest .RandString (10 ))
196+ domainName := fmt .Sprintf ("fastly-test.tf-%s.com" , acctest .RandString (10 ))
197+ backendName := fmt .Sprintf ("backend-tf-%s" , acctest .RandString (10 ))
198+ backendAddress := "httpbin.org"
199+
200+ initialConfig := fmt .Sprintf (`
201+ resource "fastly_service_vcl" "foo" {
202+ name = "%s"
203+
204+ domain {
205+ name = "%s"
206+ comment = "demo"
207+ }
208+
209+ backend {
210+ address = "%s"
211+ name = "%s"
212+ port = 443
213+ shield = "amsterdam-nl"
214+ }
215+
216+ product_enablement {
217+ ngwaf {
218+ enabled = true
219+ workspace_id = "7JFbo4RNA0OKdFWC04r6B3"
220+ traffic_ramp = 100
221+ }
222+ }
223+
224+ force_destroy = true
225+ }
226+ ` , serviceName , domainName , backendAddress , backendName )
227+
228+ updatedConfig := fmt .Sprintf (`
229+ resource "fastly_service_vcl" "foo" {
230+ name = "%s"
231+
232+ domain {
233+ name = "%s"
234+ comment = "demo"
235+ }
236+
237+ backend {
238+ address = "%s"
239+ name = "%s"
240+ port = 443
241+ shield = "amsterdam-nl"
242+ }
243+
244+ product_enablement {
245+ ngwaf {
246+ enabled = true
247+ workspace_id = "Jf4Vo9RXd00MdTYJ44xY12"
248+ traffic_ramp = 80
249+ }
250+ }
251+
252+ force_destroy = true
253+ }
254+ ` , serviceName , domainName , backendAddress , backendName )
255+
256+ resource .ParallelTest (t , resource.TestCase {
257+ PreCheck : func () { testAccPreCheck (t ) },
258+ ProviderFactories : testAccProviders ,
259+ CheckDestroy : testAccCheckServiceVCLDestroy ,
260+ Steps : []resource.TestStep {
261+ {
262+ Config : initialConfig ,
263+ Check : resource .ComposeTestCheckFunc (
264+ testAccCheckServiceExists ("fastly_service_vcl.foo" , & service ),
265+ resource .TestCheckResourceAttr ("fastly_service_vcl.foo" , "product_enablement.0.ngwaf.0.workspace_id" , "7JFbo4RNA0OKdFWC04r6B3" ),
266+ resource .TestCheckResourceAttr ("fastly_service_vcl.foo" , "product_enablement.0.ngwaf.0.traffic_ramp" , "100" ),
267+ ),
268+ },
269+ {
270+ Config : updatedConfig ,
271+ Check : resource .ComposeTestCheckFunc (
272+ testAccCheckServiceExists ("fastly_service_vcl.foo" , & service ),
273+ resource .TestCheckResourceAttr ("fastly_service_vcl.foo" , "product_enablement.0.ngwaf.0.workspace_id" , "Jf4Vo9RXd00MdTYJ44xY12" ),
274+ resource .TestCheckResourceAttr ("fastly_service_vcl.foo" , "product_enablement.0.ngwaf.0.traffic_ramp" , "80" ),
275+ ),
276+ },
277+ },
278+ })
279+ }
0 commit comments