generated from cloudposse/terraform-example-module
-
-
Notifications
You must be signed in to change notification settings - Fork 6
/
README.yaml
123 lines (104 loc) · 3.87 KB
/
README.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
#
# This is the canonical configuration for the `README.md`
# Run `make readme` to rebuild the `README.md`
#
# Name of this project
name: terraform-cloudflare-waf-rulesets
# Logo for this project
#logo: docs/logo.png
# License of this project
# While it is basically the MIT license, we need to include a notice,
# so just refer to the LICENSE file
license: modified MIT
# Copyrights
copyrights:
- name: Cloud Posse, LLC
url: https://cloudposse.com
year: '2021'
# Canonical GitHub repo
github_repo: cloudposse/terraform-cloudflare-waf-rulesets
# Badges to display
badges:
- name: Latest Release
image: https://img.shields.io/github/release/cloudposse/terraform-cloudflare-waf-rulesets.svg?style=for-the-badge
url: https://github.com/cloudposse/terraform-cloudflare-waf-rulesets/releases/latest
- name: Last Updated
image: https://img.shields.io/github/last-commit/cloudposse/terraform-cloudflare-waf-rulesets.svg?style=for-the-badge
url: https://github.com/cloudposse/terraform-cloudflare-waf-rulesets/commits
- name: Slack Community
image: https://slack.cloudposse.com/for-the-badge.svg
url: https://slack.cloudposse.com
# List any related terraform modules that this module may be used with or that this module depends on.
related:
- name: terraform-null-label
description: Terraform Module to define a consistent naming convention by (namespace, stage, name, [attributes])
url: https://github.com/cloudposse/terraform-null-label
- name: terraform-cloudflare-zone
description: Terraform module to provision a CloudFlare zone with DNS records, Argo, Firewall filters and rules
url: https://github.com/cloudposse/terraform-cloudflare-zone
references:
- name: terraform-provider-cloudflare
description: Cloudflare Terraform Provider
url: https://registry.terraform.io/providers/cloudflare/cloudflare/latest
description: |-
Terraform module to manage CloudFlare WAF rulesets.
__NOTE:__ This module is a hard fork of [Innovation Norway's](https://github.com/innovationnorway/terraform-cloudflare-waf-rulesets) terraform module and adapted to Cloud Posse conventions.
# Introduction to the project
#introduction: |-
# This is an introduction.
# How to use this module. Should be an easy example to copy and paste.
usage: |-
For a complete example, see [examples/complete](examples/complete).
For automated tests of the complete example using [bats](https://github.com/bats-core/bats-core) and [Terratest](https://github.com/gruntwork-io/terratest)
(which tests and deploys the example on AWS), see [test](test).
```hcl
module "label" {
source = "cloudposse/label/null"
# Cloud Posse recommends pinning every module to a specific version
# version = "x.x.x"
namespace = "eg"
stage = "prod"
name = "waf"
attributes = ["cf"]
delimiter = "-"
}
module "waf_rulesets" {
source = "cloudposse/waf-rulesets/cloudflare"
# Cloud Posse recommends pinning every module to a specific version
# version = "x.x.x"
zone = "cloudposse.co"
rulesets = [
{
name = "OWASP ModSecurity Core Rule Set"
mode = "simulate"
sensitivity = "off"
rule_groups = [
{
name = "OWASP Bad Robots"
mode = "on"
rules = [
{
id = "990012" # Rogue web site crawler
mode = "off"
},
]
},
]
},
]
context = module.label.context
}
```
# Example usage
examples: |-
Here is an example of using this module:
- [`examples/complete`](examples/complete) - complete example of using this module
# How to get started quickly
#quickstart: |-
# Here's how to get started...
# Other files to include in this README from the project folder
include:
- docs/targets.md
- docs/terraform.md
# Contributors to this project
contributors: []