Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for azurerm_application_gateway Basic SKU (Preview) #25973

Closed
1 task done
tedsmitt opened this issue May 15, 2024 · 7 comments · Fixed by #27440
Closed
1 task done

Support for azurerm_application_gateway Basic SKU (Preview) #25973

tedsmitt opened this issue May 15, 2024 · 7 comments · Fixed by #27440

Comments

@tedsmitt
Copy link
Contributor

tedsmitt commented May 15, 2024

Is there an existing issue for this?

  • I have searched the existing issues

Community Note

  • Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
  • Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
  • If you are interested in working on this issue or have submitted a pull request, please leave a comment and review the contribution guide to help.

Description

As per the announcement for the Application Gateway Basic SKU (Preview) - implement Basic as an option for the azurerm_application_gateway property sku.name and sku.tier

Following feature will be required to be registered in the subscription:
az feature register --name AllowApplicationGatewayBasicSku --namespace Microsoft.Network

Some changes to the sku.capacity and autoscale_configuration logic/defaults may need to be made as well, since the Basic SKU doesn't support this

I'm happy to look at implementing this, is the process to update to go-azure-sdk first, and then implement this in the provider?

New or Affected Resource(s)/Data Source(s)

azurerm_application_gateway

Potential Terraform Configuration

resource "azurerm_application_gateway" "this" {
  name                = "${var.prefix}-agw"
  resource_group_name = var.resource_group.name
  location            = var.resource_group.location

  sku {
    name = "Basic"
    tier = "Basic"
  }
...

References

https://azure.microsoft.com/en-us/updates/public-preview-azure-application-gateway-v2-basic-sku/#:~:text=The%20Application%20Gateway%20Basic%20SKU,require%20advanced%20traffic%20management%20features

@tedsmitt tedsmitt changed the title Support for azurerm_application_gateway Basic SKU Support for azurerm_application_gateway Basic SKU (Preview) May 15, 2024
@tedsmitt
Copy link
Contributor Author

I am writing a PR for this feature, should have it ready for review either by the end of tomorrow.

@tedsmitt
Copy link
Contributor Author

tedsmitt commented May 15, 2024

Upgrade of the applicationgateways API version is required

Application Gateway Name: "acctestag-xxx"): performing CreateOrUpdate: unexpected status 400 (400 Bad Request) with error: ApplicationGatewayPropertyNotSupportedApiVersionTooOld: Specified api-version '2022-07-01' does not support property 'Basic' in context '/subscriptions/xxx/resourceGroups/acctestRG-xxx/providers/Microsoft.Network/applicationGateways/acctestag-xxx'. Use at least api-version '2023-02-01' or remove property 'Basic' from the request body.

This might be more work than initially expected 😅

EDIT: Looks like this is staying on 2022-07-01 for compatibility reasons as per #25844 - so this will be blocked pending the upgrade of the api version.

@tedsmitt
Copy link
Contributor Author

Pending #26776 and release of 4.0

@Karl-jurvanen
Copy link

Any news on this, now that 4.0 is out?

@t-l-k
Copy link

t-l-k commented Sep 9, 2024

@tedsmitt @rcskosir normally I'd consider an azapi resource when the required functionality isn't provided in azurerm, but for this resource, its so complicated! Standard_v2 SKU brings a lot of excess features surplus to requirements and at a hefty price, in comparison to Basic. Can we remove the blocked label now given the following is merged?

@rcskosir rcskosir removed the blocked label Sep 10, 2024
tedsmitt added a commit to tedsmitt/terraform-provider-azurerm that referenced this issue Sep 19, 2024
tedsmitt added a commit to tedsmitt/terraform-provider-azurerm that referenced this issue Sep 19, 2024
tedsmitt added a commit to tedsmitt/terraform-provider-azurerm that referenced this issue Sep 19, 2024
@tedsmitt
Copy link
Contributor Author

#27440 Submitted

tedsmitt added a commit to tedsmitt/terraform-provider-azurerm that referenced this issue Oct 20, 2024
tedsmitt added a commit to tedsmitt/terraform-provider-azurerm that referenced this issue Oct 20, 2024
tedsmitt added a commit to tedsmitt/terraform-provider-azurerm that referenced this issue Oct 20, 2024
tedsmitt added a commit to tedsmitt/terraform-provider-azurerm that referenced this issue Oct 20, 2024
…nclude priority on request_routing_rule as required with agw v2 sku
tedsmitt added a commit to tedsmitt/terraform-provider-azurerm that referenced this issue Oct 20, 2024
…ource to be standard sku for compatibility with agw v2
katbyte pushed a commit that referenced this issue Oct 25, 2024
* feat: #25973 azurerm_application_gateway basic sku support

* feat: #25973 additional checks for application gateway Basic SKU supported features

* tests: #25973 add tests for application gateway basic sku

* fix: #2597 revert erroneous markdown lint changes

* docs: #2597 add Basic SKU docs

* tests(application_gateway): #25973 update tests to use v2 SKUs as V1 is now deprecated

See https://learn.microsoft.com/en-us/azure/application-gateway/v1-retirement#retirement-timelines

* tests(application_gateway): #25973 update all agw tests to include priority on request_routing_rule as required with agw v2 sku

* tests(application_gateway): #25973 update test public ip resource to be standard sku for compatibility with agw v2
@github-actions github-actions bot added this to the v4.7.0 milestone Oct 25, 2024
djryanj pushed a commit to djryanj/terraform-provider-azurerm that referenced this issue Oct 26, 2024
)

* feat: hashicorp#25973 azurerm_application_gateway basic sku support

* feat: hashicorp#25973 additional checks for application gateway Basic SKU supported features

* tests: hashicorp#25973 add tests for application gateway basic sku

* fix: hashicorp#2597 revert erroneous markdown lint changes

* docs: hashicorp#2597 add Basic SKU docs

* tests(application_gateway): hashicorp#25973 update tests to use v2 SKUs as V1 is now deprecated

See https://learn.microsoft.com/en-us/azure/application-gateway/v1-retirement#retirement-timelines

* tests(application_gateway): hashicorp#25973 update all agw tests to include priority on request_routing_rule as required with agw v2 sku

* tests(application_gateway): hashicorp#25973 update test public ip resource to be standard sku for compatibility with agw v2
Copy link

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.
If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 24, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants
@t-l-k @tedsmitt @Karl-jurvanen @rcskosir and others