Skip to content

Commit 3c5d79e

Browse files
authored
Update Magic Modules (#88)
1 parent 66d21ea commit 3c5d79e

6 files changed

+170
-2
lines changed
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
// ----------------------------------------------------------------------------
2+
//
3+
// *** AUTO GENERATED CODE *** AUTO GENERATED CODE ***
4+
//
5+
// ----------------------------------------------------------------------------
6+
//
7+
// This file is automatically generated by Magic Modules and manual
8+
// changes will be clobbered when the file is regenerated.
9+
//
10+
// Please read more about how to change this file in
11+
// .github/CONTRIBUTING.md.
12+
//
13+
// ----------------------------------------------------------------------------
14+
15+
package magicmodules
16+
17+
import (
18+
hcl "github.com/hashicorp/hcl/v2"
19+
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation"
20+
"github.com/terraform-linters/tflint-plugin-sdk/tflint"
21+
)
22+
23+
// GoogleComputeNodeTemplateInvalidCpuOvercommitTypeRule checks the pattern is valid
24+
type GoogleComputeNodeTemplateInvalidCpuOvercommitTypeRule struct {
25+
resourceType string
26+
attributeName string
27+
}
28+
29+
// NewGoogleComputeNodeTemplateInvalidCpuOvercommitTypeRule returns new rule with default attributes
30+
func NewGoogleComputeNodeTemplateInvalidCpuOvercommitTypeRule() *GoogleComputeNodeTemplateInvalidCpuOvercommitTypeRule {
31+
return &GoogleComputeNodeTemplateInvalidCpuOvercommitTypeRule{
32+
resourceType: "google_compute_node_template",
33+
attributeName: "cpu_overcommit_type",
34+
}
35+
}
36+
37+
// Name returns the rule name
38+
func (r *GoogleComputeNodeTemplateInvalidCpuOvercommitTypeRule) Name() string {
39+
return "google_compute_node_template_invalid_cpu_overcommit_type"
40+
}
41+
42+
// Enabled returns whether the rule is enabled by default
43+
func (r *GoogleComputeNodeTemplateInvalidCpuOvercommitTypeRule) Enabled() bool {
44+
return true
45+
}
46+
47+
// Severity returns the rule severity
48+
func (r *GoogleComputeNodeTemplateInvalidCpuOvercommitTypeRule) Severity() string {
49+
return tflint.ERROR
50+
}
51+
52+
// Link returns the rule reference link
53+
func (r *GoogleComputeNodeTemplateInvalidCpuOvercommitTypeRule) Link() string {
54+
return ""
55+
}
56+
57+
// Check checks the pattern is valid
58+
func (r *GoogleComputeNodeTemplateInvalidCpuOvercommitTypeRule) Check(runner tflint.Runner) error {
59+
return runner.WalkResourceAttributes(r.resourceType, r.attributeName, func(attribute *hcl.Attribute) error {
60+
var val string
61+
err := runner.EvaluateExpr(attribute.Expr, &val, nil)
62+
63+
validateFunc := validation.StringInSlice([]string{"ENABLED", "NONE", ""}, false)
64+
65+
return runner.EnsureNoError(err, func() error {
66+
_, errors := validateFunc(val, r.attributeName)
67+
for _, err := range errors {
68+
runner.EmitIssueOnExpr(r, err.Error(), attribute.Expr)
69+
}
70+
return nil
71+
})
72+
})
73+
}
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
// ----------------------------------------------------------------------------
2+
//
3+
// *** AUTO GENERATED CODE *** AUTO GENERATED CODE ***
4+
//
5+
// ----------------------------------------------------------------------------
6+
//
7+
// This file is automatically generated by Magic Modules and manual
8+
// changes will be clobbered when the file is regenerated.
9+
//
10+
// Please read more about how to change this file in
11+
// .github/CONTRIBUTING.md.
12+
//
13+
// ----------------------------------------------------------------------------
14+
15+
package magicmodules
16+
17+
import (
18+
hcl "github.com/hashicorp/hcl/v2"
19+
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation"
20+
"github.com/terraform-linters/tflint-plugin-sdk/tflint"
21+
)
22+
23+
// GoogleDnsRecordSetInvalidTypeRule checks the pattern is valid
24+
type GoogleDnsRecordSetInvalidTypeRule struct {
25+
resourceType string
26+
attributeName string
27+
}
28+
29+
// NewGoogleDnsRecordSetInvalidTypeRule returns new rule with default attributes
30+
func NewGoogleDnsRecordSetInvalidTypeRule() *GoogleDnsRecordSetInvalidTypeRule {
31+
return &GoogleDnsRecordSetInvalidTypeRule{
32+
resourceType: "google_dns_record_set",
33+
attributeName: "type",
34+
}
35+
}
36+
37+
// Name returns the rule name
38+
func (r *GoogleDnsRecordSetInvalidTypeRule) Name() string {
39+
return "google_dns_record_set_invalid_type"
40+
}
41+
42+
// Enabled returns whether the rule is enabled by default
43+
func (r *GoogleDnsRecordSetInvalidTypeRule) Enabled() bool {
44+
return true
45+
}
46+
47+
// Severity returns the rule severity
48+
func (r *GoogleDnsRecordSetInvalidTypeRule) Severity() string {
49+
return tflint.ERROR
50+
}
51+
52+
// Link returns the rule reference link
53+
func (r *GoogleDnsRecordSetInvalidTypeRule) Link() string {
54+
return ""
55+
}
56+
57+
// Check checks the pattern is valid
58+
func (r *GoogleDnsRecordSetInvalidTypeRule) Check(runner tflint.Runner) error {
59+
return runner.WalkResourceAttributes(r.resourceType, r.attributeName, func(attribute *hcl.Attribute) error {
60+
var val string
61+
err := runner.EvaluateExpr(attribute.Expr, &val, nil)
62+
63+
validateFunc := validation.StringInSlice([]string{"A", "AAAA", "CAA", "CNAME", "MX", "NAPTR", "NS", "PTR", "SOA", "SPF", "SRV", "TLSA", "TXT"}, false)
64+
65+
return runner.EnsureNoError(err, func() error {
66+
_, errors := validateFunc(val, r.attributeName)
67+
for _, err := range errors {
68+
runner.EmitIssueOnExpr(r, err.Error(), attribute.Expr)
69+
}
70+
return nil
71+
})
72+
})
73+
}

rules/magicmodules/google_sql_source_representation_instance_invalid_database_version.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ func (r *GoogleSqlSourceRepresentationInstanceInvalidDatabaseVersionRule) Check(
6060
var val string
6161
err := runner.EvaluateExpr(attribute.Expr, &val, nil)
6262

63-
validateFunc := validation.StringInSlice([]string{"MYSQL_5_6", "MYSQL_5_7", "MYSQL_8_0"}, false)
63+
validateFunc := validation.StringInSlice([]string{"MYSQL_5_5", "MYSQL_5_6", "MYSQL_5_7", "MYSQL_8_0"}, false)
6464

6565
return runner.EnsureNoError(err, func() error {
6666
_, errors := validateFunc(val, r.attributeName)

rules/magicmodules/product.go

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,16 @@ var Products = map[string]Product{
5353
{Name: "Apigee API", URL: "https://console.cloud.google.com/apis/library/apigee.googleapis.com/"},
5454
},
5555
},
56+
"google_apigee_envgroup": {
57+
APIsRequired: []APIReference{
58+
{Name: "Apigee API", URL: "https://console.cloud.google.com/apis/library/apigee.googleapis.com/"},
59+
},
60+
},
61+
"google_apigee_instance_attachment": {
62+
APIsRequired: []APIReference{
63+
{Name: "Apigee API", URL: "https://console.cloud.google.com/apis/library/apigee.googleapis.com/"},
64+
},
65+
},
5666
"google_kms_key_ring": {
5767
APIsRequired: []APIReference{
5868
{Name: "Cloud Key Management Service (KMS) API", URL: "https://console.cloud.google.com/apis/library/cloudkms.googleapis.com/"},
@@ -182,6 +192,11 @@ var Products = map[string]Product{
182192
{Name: "Cloud Healthcare API", URL: "https://console.cloud.google.com/apis/library/healthcare.googleapis.com/"},
183193
},
184194
},
195+
"google_healthcare_consent_store": {
196+
APIsRequired: []APIReference{
197+
{Name: "Cloud Healthcare API", URL: "https://console.cloud.google.com/apis/library/healthcare.googleapis.com/"},
198+
},
199+
},
185200
"google_app_engine_domain_mapping": {
186201
APIsRequired: []APIReference{
187202
{Name: "App Engine Admin API", URL: "https://console.cloud.google.com/apis/library/appengine.googleapis.com/"},
@@ -806,6 +821,11 @@ var Products = map[string]Product{
806821
{Name: "Google Cloud DNS API", URL: "https://console.cloud.google.com/apis/library/dns.googleapis.com/"},
807822
},
808823
},
824+
"google_dns_record_set": {
825+
APIsRequired: []APIReference{
826+
{Name: "Google Cloud DNS API", URL: "https://console.cloud.google.com/apis/library/dns.googleapis.com/"},
827+
},
828+
},
809829
"google_notebooks_environment": {
810830
APIsRequired: []APIReference{
811831
{Name: "Cloud Notebooks API", URL: "https://console.cloud.google.com/apis/api/notebooks.googleapis.com"},

rules/magicmodules/provider.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ var Rules = []tflint.Rule{
6565
NewGoogleComputeInterconnectAttachmentInvalidTypeRule(),
6666
NewGoogleComputeManagedSslCertificateInvalidTypeRule(),
6767
NewGoogleComputeNetworkEndpointGroupInvalidNetworkEndpointTypeRule(),
68+
NewGoogleComputeNodeTemplateInvalidCpuOvercommitTypeRule(),
6869
NewGoogleComputeRegionBackendServiceInvalidLoadBalancingSchemeRule(),
6970
NewGoogleComputeRegionBackendServiceInvalidLocalityLbPolicyRule(),
7071
NewGoogleComputeRegionBackendServiceInvalidProtocolRule(),
@@ -95,6 +96,7 @@ var Rules = []tflint.Rule{
9596
NewGoogleDialogflowEntityTypeInvalidKindRule(),
9697
NewGoogleDialogflowIntentInvalidWebhookStateRule(),
9798
NewGoogleDnsManagedZoneInvalidVisibilityRule(),
99+
NewGoogleDnsRecordSetInvalidTypeRule(),
98100
NewGoogleFilestoreInstanceInvalidTierRule(),
99101
NewGoogleFirestoreIndexInvalidQueryScopeRule(),
100102
NewGoogleHealthcareFhirStoreInvalidVersionRule(),

tools/magic-modules

Submodule magic-modules updated 135 files

0 commit comments

Comments
 (0)