generated from cloudposse/terraform-example-module
-
-
Notifications
You must be signed in to change notification settings - Fork 22
/
README.yaml
126 lines (103 loc) · 5.4 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
124
125
126
#
# This is the canonical configuration for the `README.md`
# Run `make readme` to rebuild the `README.md`
#
# Name of this project
name: terraform-opsgenie-incident-management
# Logo for this project
#logo: docs/logo.png
# License of this project
license: "APACHE2"
# Copyrights
copyrights:
- name: "Cloud Posse, LLC"
url: "https://cloudposse.com"
year: "2021"
# Canonical GitHub repo
github_repo: cloudposse/terraform-opsgenie-incident-management
# Badges to display
badges:
- name: Latest Release
image: https://img.shields.io/github/release/cloudposse/terraform-opsgenie-incident-management.svg?style=for-the-badge
url: https://github.com/cloudposse/terraform-opsgenie-incident-management/releases/latest
- name: Last Updated
image: https://img.shields.io/github/last-commit/cloudposse/terraform-opsgenie-incident-management.svg?style=for-the-badge
url: https://github.com/cloudposse/terraform-opsgenie-incident-management/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-datadog-monitor"
description: "Terraform module to provision Standard System Monitors (cpu, memory, swap, io, etc) in Datadog"
url: "https://github.com/cloudposse/terraform-datadog-monitor"
# List any resources helpful for someone to get started. For example, link to the hashicorp documentation or AWS documentation.
references:
- name: "Opsgenie API Overview"
description: "Opsgenie APIs give you interconnectivity to process your requests and access data. View our individual documentation for our APIs to see the methods used to process relevant requests. Action-specific instructions are included to help you complete requests, along with sample requests and responses for added guidance. Additionally, view our Rate Limiting section for specific details and configurations."
url: "https://docs.opsgenie.com/docs/api-overview"
- name: "Terraform Registry Opsgenie Provider documentation"
description: "The Opsgenie provider is used to interact with the many resources supported by Opsgenie. The provider needs to be configured with the proper credentials before it can be used."
url: "https://registry.terraform.io/providers/opsgenie/opsgenie/latest/docs"
- name: "Github Terraform OpsGenie provider repository"
description: "The Opsgenie provider is used to interact with the many resources supported by Opsgenie. The provider needs to be configured with the proper credentials before it can be used."
url: "https://github.com/opsgenie/terraform-provider-opsgenie/"
# Short description of this project
description: |-
Terraform module to provision Opsgenie resources using the Opsgenie provider. The provider needs to be configured with the proper credentials before it can be used.
It consist of root module which is only here as an example but can be used as a combination of all submodules. Submodules can also be combined to abstract away complexity of setting up for example a team escalation.
# Introduction to the project
introduction: |-
Available modules:
- [Alert Policy](modules/alert_policy)
- [API Integration](modules/api_integration)
- [Config](modules/config)
- [Escalation](modules/escalation)
- [Integration Action](modules/integration_action) (advanced feature — not available to all OpsGenie plans)
- [Notification Policy](modules/notification_policy)
- [Team](modules/team)
- [Team Routing Rule](modules/team_routing_rule)
- [User](modules/user)
- [Service](modules/service)
- [Service Incident Rule](modules/service_incident_rule)
**Note:** Root module is just an example that uses all of submodules.
**Note:** See the [Advanced Features Example](examples/advanced_features) for features only available to some OpsGenie plans.
usage: |-
Here's how to invoke `team` module in your projects
```hcl
module "team-name" {
source = "cloudposse/incident-management/opsgenie//modules/team"
# Cloud Posse recommends pinning every module to a specific version
# version = "x.x.x"
team = {
name = "team-name"
description = "team-description"
}
}
```
# Example usage
examples: |-
Here are examples of using the module:
- [`complete`](examples/complete) - complete example of using this module
Submodules examples:
- [`alert_policy`](examples/alert_policy)
- [`api_integration`](examples/api_integration)
- [`escalation`](examples/escalation)
- [`integration_action`](examples/integration_action) (advanced feature — not available to all OpsGenie plans)
- [`notification_policy`](examples/notification_policy)
- [`team`](examples/team)
- [`team_routing_rule`](examples/team_routing_rule)
- [`user`](examples/user)
Here is an example of using the `config` module, which incorporates all resource declarations into a single module:
- [`config`](examples/config)
Here are automated tests for the examples using [bats](https://github.com/bats-core/bats-core) and [Terratest](https://github.com/gruntwork-io/terratest) (which tests and provisions the examples):
- [test](test)
# 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: []