Using the provider, it is impossible to create an api integration of type Email.
Terraform Version
Terraform v0.14.8
provider.opsgenie v0.6.0
Affected Resource(s)
opsgenie_api_integration
Terraform Configuration Files
resource "opsgenie_api_integration" "email" {
name = "email integration of team X"
owner_team_id = opsgenie_team.team.id
type = "Email"
emailUsername = "X"
}
Debug Output
With omission of emailUsername
Error: Error occurred with Status code: 422, Message: Request body is not processable. Please check the errors., Took: 0.001000, RequestId: a1304fce-6ecd-40d5-ac90-25179867fa26, Error Detail: map[emailUsername:must not be blank]
on ../opsgenie_team/team.tf line 19, in resource "opsgenie_api_integration" "email":
19: resource "opsgenie_api_integration" "email" {
With inclusion of emailUsername
Error: Unsupported argument
on ../opsgenie_team/team.tf line 23, in resource "opsgenie_api_integration" "email":
23: emailUsername = var.team_name
An argument named "emailUsername" is not expected here.
Expected Behavior
Creation of an API integration of type email on team level.
Actual Behavior
When emailUsername is not included, the plan is successful, and the error occurs when being applied, while api calls are performed. The deployment fails and no api integration is created.
possibly might benefit from adding another method similar to createWebhookIntegration that allows the additional parameter, complying with the opsgenie API.
Hi,
Using the provider, it is impossible to create an api integration of type
Email
.Terraform Version
Affected Resource(s)
Terraform Configuration Files
Debug Output
With omission of
emailUsername
With inclusion of
emailUsername
Expected Behavior
Creation of an API integration of type email on team level.
Actual Behavior
emailUsername
is not included, theplan
is successful, and the error occurs when being applied, while api calls are performed. The deployment fails and no api integration is created.emailUsername
is included, theplan
fails.Steps to Reproduce
terraform apply
Important Factoids
emailUsername
in the request for integration of typeEmail
(https://docs.opsgenie.com/docs/integration-api#create-email-based-integration)emailUsername
is not defined as an accepted input inresource_opsgenie_api_integration.go
email
is processed together with all other integrations (except webhooks), using standard parameters, and therefore missing the required parameter when calling the opsgenie api: https://github.com/opsgenie/terraform-provider-opsgenie/blob/d98b6d4acdda83a15e6be2e1be8a48d5c75ea01f/opsgenie/resource_opsgenie_api_integration.go#L97createWebhookIntegration
that allows the additional parameter, complying with the opsgenie API.References