2017-07-12 8 views
0

私はschema.schemaにnumber_of_serversフィールドを持っており、範囲を設定する必要があります。それを行う方法はありますか?範囲をterraform schema.schemaフィールドに設定するにはどうすればよいですか?

Schema: map[string]*schema.Schema{ 
     "number_of_servers": { 
      Type:  schema.TypeString, 
      Required: true, 
      Range: 1-5, 
     }, 
+0

'schema.Schema'タイプは何の' Range'フィールドを持っていない、と私は意味すべきか '-4'わからないんだけど文字列値の "範囲"。あなたはおそらく 'Schema.ValidateFunc'を探していますか? – JimB

答えて

0

一般的に言えば、検証機能はすべての設定(変数と組み合わせてもよい)を検証するためのものです。これらはterraform plan,terraform applyおよびterraform destroyの一部として実行されます。ユーザーは、CIでよく使用されるterraform validateによって明示的な検証をトリガすることもできます。

"Range"は、指定された文字列の最小文字数を制限することを意味します。& StringLenBetween from the validation packageを使用できます。

Schema: map[string]*schema.Schema{ 
    "number_of_servers": { 
     Type:  schema.TypeString, 
     Required: true, 
     ValidateFunc: validation.StringLenBetween(1, 5), 
    }, 

は、あなたはそれをここで実際に使用されて見ることができます: https://github.com/terraform-providers/terraform-provider-aws/blob/46bff11/aws/resource_aws_cloudwatch_event_target.go#L71-L75

関連する問題