-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathgenerator.yaml
126 lines (126 loc) · 3.7 KB
/
generator.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
ignore:
resource_names:
- APIKey
# - IPSet
- RegexPatternSet
# - RuleGroup
# - WebACL
field_paths:
- RuleGroup.Rules.Statement.AndStatement
- RuleGroup.Rules.Statement.OrStatement
- RuleGroup.Rules.Statement.NotStatement
- RuleGroup.Rules.Statement.ManagedRuleGroupStatement.ScopeDownStatement
- RuleGroup.Rules.Statement.RateBasedStatement.ScopeDownStatement
- WebACL.Rules.Statement.AndStatement
- WebACL.Rules.Statement.OrStatement
- WebACL.Rules.Statement.NotStatement
- WebACL.Rules.Statement.ManagedRuleGroupStatement.ScopeDownStatement
- WebACL.Rules.Statement.RateBasedStatement.ScopeDownStatement
model_name: wafv2
empty_shapes:
- All
- Method
- UriPath
- QueryString
- AllQueryArguments
- RateLimitIP
- RateLimitForwardedIP
- RateLimitHTTPMethod
- NoneAction
operations:
GetIPSet:
output_wrapper_field_path: IPSet
GetRuleGroup:
output_wrapper_field_path: RuleGroup
GetWebACL:
output_wrapper_field_path: WebACL
resources:
IPSet:
fields:
Name:
is_primary_key: true
is_immutable: true
Tags:
compare:
is_ignored: true
tags:
ignore: true
hooks:
sdk_read_one_post_set_output:
template_path: hooks/ipset/sdk_read_one_post_set_output.go.tpl
RuleGroup:
fields:
Name:
is_primary_key: true
is_immutable: true
Capacity:
is_immutable: true
Rules.Statement.AndStatement:
type: string
set:
- ignore: "all"
Rules.Statement.OrStatement:
type: string
set:
- ignore: "all"
Rules.Statement.NotStatement:
type: string
set:
- ignore: "all"
Rules.Statement.ManagedRuleGroupStatement.ScopeDownStatement:
type: string
set:
- ignore: "all"
Rules.Statement.RateBasedStatement.ScopeDownStatement:
type: string
set:
- ignore: "all"
Rules.Statement.ByteMatchStatement.TextTransformations.Type:
go_tag: json:"type,omitempty"
hooks:
sdk_read_one_pre_build_request:
template_path: hooks/rulegroup/sdk_read_one_pre_build_request.go.tpl
sdk_read_one_post_set_output:
template_path: hooks/rulegroup/sdk_read_one_post_set_output.go.tpl
sdk_create_post_build_request:
template_path: hooks/rulegroup/sdk_create_post_build_request.go.tpl
sdk_update_post_build_request:
template_path: hooks/rulegroup/sdk_update_post_build_request.go.tpl
sdk_file_end:
template_path: hooks/common/sdk_file_end.go.tpl
WebACL:
fields:
Name:
is_primary_key: true
is_immutable: true
Rules.Statement.AndStatement:
type: string
set:
- ignore: "all"
Rules.Statement.OrStatement:
type: string
set:
- ignore: "all"
Rules.Statement.NotStatement:
type: string
set:
- ignore: "all"
Rules.Statement.ManagedRuleGroupStatement.ScopeDownStatement:
type: string
set:
- ignore: "all"
Rules.Statement.RateBasedStatement.ScopeDownStatement:
type: string
set:
- ignore: "all"
hooks:
sdk_read_one_pre_build_request:
template_path: hooks/webacl/sdk_read_one_pre_build_request.go.tpl
sdk_read_one_post_set_output:
template_path: hooks/webacl/sdk_read_one_post_set_output.go.tpl
sdk_create_post_build_request:
template_path: hooks/webacl/sdk_create_post_build_request.go.tpl
sdk_update_post_build_request:
template_path: hooks/webacl/sdk_update_post_build_request.go.tpl
sdk_file_end:
template_path: hooks/common/sdk_file_end.go.tpl