From c680a8e1622ed0f18751d9d167c836ee24f5e897 Mon Sep 17 00:00:00 2001 From: Radek Simko Date: Thu, 10 Aug 2017 14:38:14 +0200 Subject: vendor: github.com/hashicorp/terraform/...@v0.10.0 --- .../github.com/hashicorp/terraform/helper/schema/schema.go | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'vendor/github.com/hashicorp/terraform/helper/schema/schema.go') diff --git a/vendor/github.com/hashicorp/terraform/helper/schema/schema.go b/vendor/github.com/hashicorp/terraform/helper/schema/schema.go index 632672a..acb5618 100644 --- a/vendor/github.com/hashicorp/terraform/helper/schema/schema.go +++ b/vendor/github.com/hashicorp/terraform/helper/schema/schema.go @@ -15,6 +15,7 @@ import ( "fmt" "os" "reflect" + "regexp" "sort" "strconv" "strings" @@ -661,7 +662,13 @@ func (m schemaMap) InternalValidate(topSchemaMap schemaMap) error { if v.ValidateFunc != nil { switch v.Type { case TypeList, TypeSet: - return fmt.Errorf("ValidateFunc is not yet supported on lists or sets.") + return fmt.Errorf("%s: ValidateFunc is not yet supported on lists or sets.", k) + } + } + + if v.Deprecated == "" && v.Removed == "" { + if !isValidFieldName(k) { + return fmt.Errorf("%s: Field name may only contain lowercase alphanumeric characters & underscores.", k) } } } @@ -669,6 +676,11 @@ func (m schemaMap) InternalValidate(topSchemaMap schemaMap) error { return nil } +func isValidFieldName(name string) bool { + re := regexp.MustCompile("^[a-z0-9_]+$") + return re.MatchString(name) +} + func (m schemaMap) diff( k string, schema *Schema, -- cgit v1.2.3