-
Notifications
You must be signed in to change notification settings - Fork 24
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add support for 'msteams' recipients (#386)
Adds supports for `msteams` recipients. Also fixes a "sneaky bug" where a previous refactor would allow `marker` type recipients on Burn Alerts during the validation stage (the API still would reject them).
- Loading branch information
Showing
17 changed files
with
198 additions
and
45 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
# Resource: honeycombio_msteams_recipient | ||
|
||
`honeycombio_msteams_recipient` allows you to define and manage an MSTeams recipient that can be used by Triggers or BurnAlerts notifications. | ||
|
||
## Example Usage | ||
|
||
```hcl | ||
resource "honeycombio_msteams_recipient" "prod" { | ||
name = "Production Alerts" | ||
url = "https://mycorp.webhook.office.com/webhookb2/abcd12345" | ||
} | ||
``` | ||
|
||
## Argument Reference | ||
|
||
The following arguments are supported: | ||
|
||
* `name` - (Required) The name of the MS Teams Integration to create. | ||
* `url` - (Required) The Incoming Webhook URL to send the notification to. | ||
|
||
## Attribute Reference | ||
|
||
In addition to all arguments above, the following attributes are exported: | ||
|
||
* `id` - The ID of the recipient. | ||
|
||
## Import | ||
|
||
MSTeams Recipients can be imported by their ID, e.g. | ||
|
||
``` | ||
$ terraform import honeycombio_msteams_recipient.my_recipient nx2zsefB1cX | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
package honeycombio | ||
|
||
import ( | ||
"context" | ||
|
||
"github.com/hashicorp/terraform-plugin-sdk/v2/diag" | ||
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" | ||
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/validation" | ||
honeycombio "github.com/honeycombio/terraform-provider-honeycombio/client" | ||
) | ||
|
||
func newMSTeamsRecipient() *schema.Resource { | ||
return &schema.Resource{ | ||
CreateContext: resourceMSTeamsRecipientCreate, | ||
ReadContext: resourceMSTeamsRecipientRead, | ||
UpdateContext: resourceMSTeamsRecipientUpdate, | ||
DeleteContext: resourceMSTeamsRecipientDelete, | ||
Importer: &schema.ResourceImporter{ | ||
StateContext: schema.ImportStatePassthroughContext, | ||
}, | ||
Description: "Honeycomb MSTeams Recipient allows you to define and manage an MSTeams recipient that can be used by Triggers or BurnAlerts notifications.", | ||
|
||
Schema: map[string]*schema.Schema{ | ||
"name": { | ||
Type: schema.TypeString, | ||
Required: true, | ||
Description: "The name of the MSTeams Integration to create", | ||
}, | ||
"url": { | ||
Type: schema.TypeString, | ||
Required: true, | ||
Description: "The Incoming Webhook URL to send the notification to", | ||
ValidateFunc: validation.IsURLWithHTTPorHTTPS, | ||
}, | ||
}, | ||
} | ||
} | ||
|
||
func resourceMSTeamsRecipientCreate(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { | ||
return createRecipient(ctx, d, meta, honeycombio.RecipientTypeMSTeams) | ||
} | ||
|
||
func resourceMSTeamsRecipientRead(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { | ||
return readRecipient(ctx, d, meta, honeycombio.RecipientTypeMSTeams) | ||
} | ||
|
||
func resourceMSTeamsRecipientUpdate(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { | ||
return updateRecipient(ctx, d, meta, honeycombio.RecipientTypeMSTeams) | ||
} | ||
|
||
func resourceMSTeamsRecipientDelete(ctx context.Context, d *schema.ResourceData, meta interface{}) diag.Diagnostics { | ||
return deleteRecipient(ctx, d, meta) | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.