Skip to content

Commit 572c371

Browse files
committed
fix to free/starter functions region in build settings
1 parent 8f5420d commit 572c371

File tree

3 files changed

+64
-32
lines changed

3 files changed

+64
-32
lines changed

internal/provider/free_plan_test.go

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
package provider
2+
3+
import (
4+
"testing"
5+
6+
"github.com/hashicorp/terraform-plugin-testing/helper/resource"
7+
"github.com/hashicorp/terraform-plugin-testing/terraform"
8+
)
9+
10+
func TestAccFreeEnvVar(t *testing.T) {
11+
accTest(t, []resource.TestStep{
12+
{
13+
Config: `resource "netlify_environment_variable" "site_level" {
14+
team_id = "66e98216e3fe031846dc998a"
15+
site_id = "fbba82b0-f1e9-4e92-9203-eefc62857545"
16+
key = "TEST_SITE_LEVEL"
17+
values = [
18+
{
19+
value = "/path/here",
20+
context = "all",
21+
}
22+
]
23+
}
24+
`,
25+
Check: resource.ComposeAggregateTestCheckFunc(
26+
resource.TestCheckResourceAttr("netlify_environment_variable.site_level", "team_id", "66e98216e3fe031846dc998a"),
27+
resource.TestCheckResourceAttr("netlify_environment_variable.site_level", "site_id", "fbba82b0-f1e9-4e92-9203-eefc62857545"),
28+
resource.TestCheckResourceAttr("netlify_environment_variable.site_level", "key", "TEST_SITE_LEVEL"),
29+
),
30+
},
31+
}, func(s *terraform.State) error { return nil })
32+
}
33+
34+
func TestAccFreeSiteBuildSettings(t *testing.T) {
35+
accTest(t, []resource.TestStep{
36+
{
37+
Config: `resource "netlify_site_build_settings" "example" {
38+
site_id = "3a3c2d0f-4e59-46c0-ae6a-4bdc0d49aca9"
39+
build_command = "npm run build"
40+
publish_directory = "dist"
41+
production_branch = "main"
42+
}`,
43+
Check: resource.ComposeAggregateTestCheckFunc(
44+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "site_id", "3a3c2d0f-4e59-46c0-ae6a-4bdc0d49aca9"),
45+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "build_command", "npm run build"),
46+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "publish_directory", "dist"),
47+
resource.TestCheckResourceAttr("netlify_site_build_settings.example", "production_branch", "main"),
48+
),
49+
},
50+
{
51+
ResourceName: "netlify_site_build_settings.example",
52+
ImportState: true,
53+
ImportStateId: "3a3c2d0f-4e59-46c0-ae6a-4bdc0d49aca9",
54+
ImportStateVerifyIdentifierAttribute: "site_id",
55+
ImportStateVerify: true,
56+
ImportStateVerifyIgnore: []string{"last_updated"},
57+
},
58+
}, func(s *terraform.State) error { return nil })
59+
}

internal/provider/site_build_settings_resource.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -359,6 +359,11 @@ func (r *siteBuildSettingsResource) write(ctx context.Context, plan *siteBuildSe
359359
} else {
360360
site.FunctionsRegion = plan.FunctionsRegion.ValueStringPointer()
361361
}
362+
if site.FunctionsRegion != nil &&
363+
curState.FunctionsRegion.ValueStringPointer() != nil &&
364+
*site.FunctionsRegion == curState.FunctionsRegion.ValueString() {
365+
site.FunctionsRegion = nil
366+
}
362367

363368
_, _, err := r.data.client.SitesAPI.
364369
UpdateSite(ctx, plan.SiteID.ValueString()).

internal/provider/starter_plan_test.go

Lines changed: 0 additions & 32 deletions
This file was deleted.

0 commit comments

Comments
 (0)