From 3a0321ae24de1c111440c515dbb64c945e3c4cdb Mon Sep 17 00:00:00 2001 From: Xinyi Joffre Date: Wed, 24 Jun 2020 12:00:02 -0700 Subject: [PATCH 1/2] Update path validation for api management api Adding support for paths that start with the character '.' This is important for path implementations such as ".well-known" in universal links --- azurerm/helpers/validate/api_management.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/azurerm/helpers/validate/api_management.go b/azurerm/helpers/validate/api_management.go index ef997ad08c07..12f444b40d4f 100644 --- a/azurerm/helpers/validate/api_management.go +++ b/azurerm/helpers/validate/api_management.go @@ -71,7 +71,7 @@ func ApiManagementApiName(v interface{}, k string) (ws []string, es []error) { func ApiManagementApiPath(v interface{}, k string) (ws []string, es []error) { value := v.(string) - if matched := regexp.MustCompile(`^(?:|[\w][\w-/.]{0,398}[\w-])$`).Match([]byte(value)); !matched { + if matched := regexp.MustCompile(`^(?:|[\w.][\w-/.]{0,398}[\w-])$`).Match([]byte(value)); !matched { es = append(es, fmt.Errorf("%q may only be up to 400 characters in length, not start or end with `/` and only contain valid url characters", k)) } return ws, es From 4e12fae52c49219016ff97d49bf1eda05e774ac8 Mon Sep 17 00:00:00 2001 From: Xinyi Joffre Date: Wed, 24 Jun 2020 12:02:52 -0700 Subject: [PATCH 2/2] Add test for api_management path validation --- azurerm/helpers/validate/api_management_test.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/azurerm/helpers/validate/api_management_test.go b/azurerm/helpers/validate/api_management_test.go index 9cb3c0584c5b..8121f95e4f5b 100644 --- a/azurerm/helpers/validate/api_management_test.go +++ b/azurerm/helpers/validate/api_management_test.go @@ -126,6 +126,10 @@ func TestAzureRMApiManagementApiPath_validation(t *testing.T) { Value: "api1/sub", ErrCount: 0, }, + { + Value: ".well-known", + ErrCount: 0, + }, { Value: s.Repeat("x", 401), ErrCount: 1,