hashicorp / hashicorp/packer-plugin-azure
Deployment failed due to Azure service internal error
- Dominant language
- Go
- Stars
- 63
- Forks
- 103
- PR merge metrics
- No merged PRs in 30d
Description
#### Overview of the Issue
Deployment of VM failed due to Azure disk service internal error. In this case, a retry of deployment could help.
#### Reproduction Steps
This is due to Azure internal error so no particular repro steps.
### Plugin and Packer version
Packer version: 1.15.0
packer-plugin-azure: v2.5.2
### Simplified Packer Buildfile
n/a
### Operating system and Environment details
OS, Architecture, and any other information you can provide about the environment.
### Log Fragments and crash.log files
```
2026/02/25 13:49:12 ui: ==> azure-arm: Creating Azure Resource Manager (ARM) client ...
2026/02/25 13:49:12 packer-plugin-azure_v2.5.2_x5.0_linux_amd64 plugin: 2026/02/25 13:49:12 [DEBUG] POST https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000/oauth2/v2.0/token
2026/02/25 13:49:12 ui: ==> azure-arm: ARM Client successfully created
2026/02/25 13:49:12 packer-plugin-azure_v2.5.2_x5.0_linux_amd64 plugin: 2026/02/25 13:49:12 [DEBUG] GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg_temp?[REDACTED]
2026/02/25 13:49:12 packer-plugin-azure_v2.5.2_x5.0_linux_amd64 plugin: 2026/02/25 13:49:12 [DEBUG] GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg_temp/providers/Microsoft.Compute/images/packerImg_20260225134719?[REDACTED]
2026/02/25 13:49:13 packer-plugin-azure_v2.5.2_x5.0_linux_amd64 plugin: 2026/02/25 13:49:13 [DEBUG] GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg_temp/providers/Microsoft.Compute/snapshots/packerImg_20260225134719_os_disk?[REDACTED]
2026/02/25 13:49:13 packer-plugin-azure_v2.5.2_x5.0_linux_amd64 plugin: 2026/02/25 13:49:13 [DEBUG] GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg_temp?[REDACTED]
2026/02/25 13:49:13 ui: ==> azure-arm: WARNING: Zone resiliency may not be supported in centraluseuap, checkout the docs at https://docs.microsoft.com/en-us/azure/availability-zones/
2026/02/25 13:49:13 ui: ==> azure-arm: Getting source image id for the deployment ...
2026/02/25 13:49:13 ui: ==> azure-arm: -> SourceImageName: '/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/centraluseuap/publishers/Canonical/ArtifactTypes/vmimage/offers/UbuntuServer/skus/16.04-LTS/versions/16.04.202109281'
2026/02/25 13:49:13 packer-plugin-azure_v2.5.2_x5.0_linux_amd64 plugin: 2026/02/25 13:49:13 [DEBUG] GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg_temp?[REDACTED]
2026/02/25 13:49:13 ui: ==> azure-arm: Using existing resource group ...
2026/02/25 13:49:13 ui: ==> azure-arm: -> ResourceGroupName : 'rg_temp'
2026/02/25 13:49:13 ui: ==> azure-arm: -> Location : 'centraluseuap'
2026/02/25 13:49:13 ui: ==> azure-arm: Validating deployment template ...
2026/02/25 13:49:13 ui: ==> azure-arm: -> ResourceGroupName : 'rg_temp'
2026/02/25 13:49:13 ui: ==> azure-arm: -> DeploymentName : 'pkrdpbku5hwv5v9'
2026/02/25 13:49:13 packer-plugin-azure_v2.5.2_x5.0_linux_amd64 plugin: 2026/02/25 13:49:13 [DEBUG] POST https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg_temp/providers/Microsoft.Resources/deployments/pkrdpbku5hwv5v9/validate?[REDACTED]
2026/02/25 13:49:14 ui: ==> azure-arm: Deploying deployment template ...
2026/02/25 13:49:14 ui: ==> azure-arm: -> ResourceGroupName : 'rg_temp'
2026/02/25 13:49:14 ui: ==> azure-arm: -> DeploymentName : 'pkrdpbku5hwv5v9'
2026/02/25 13:49:14 packer-plugin-azure_v2.5.2_x5.0_linux_amd64 plugin: 2026/02/25 13:49:14 [DEBUG] PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg_temp/providers/Microsoft.Resources/deployments/pkrdpbku5hwv5v9?[REDACTED]
2026/02/25 13:49:26 packer-plugin-azure_v2.5.2_x5.0_linux_amd64 plugin: 2026/02/25 13:49:26 [DEBUG] GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg_temp/providers/Microsoft.Resources/deployments/pkrdpbku5hwv5v9/operationStatuses/08584295795301632694?[REDACTED]
2026/02/25 13:49:36 packer-plugin-azure_v2.5.2_x5.0_linux_amd64 plugin: 2026/02/25 13:49:36 [DEBUG] GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/rg_temp/providers/Microsoft.Resources/deployments/pkrdpbku5hwv5v9/operationStatuses/08584295795301632694?[REDACTED]
2026/02/25 13:49:36 ui: ==> azure-arm: ERROR: -> DeploymentFailed : At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/arm-deployment-operations for usage details.
==> azure-arm: ERROR: -> ResourceDeploymentFailure : The resource write operation failed to complete successfully, because it reached terminal provisioning state 'Failed'.
==> azure-arm:
2026/02/25 13:49:36 ui error: ==> azure-arm: polling after CreateOrUpdate: polling failed: the Azure API returned the following error:
==> azure-arm:
==> azure-arm: Status: "DeploymentFailed"
==> azure-arm: Code: "ResourceDeploymentFailure"
==> azure-arm: Message: "At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/arm-deployment-operations for usage details.\nThe resource write operation failed to complete successfully, because it reached terminal provisioning state 'Failed'."
==> azure-arm: Activity Id: ""
==> azure-arm:
==> azure-arm: ---
==> azure-arm:
==> azure-arm: API Response:
==> azure-arm:
==> azure-arm: ----[start]----
==> azure-arm: {"status":"Failed","error":{"code":"DeploymentFailed","target":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg_temp/providers/Microsoft.Resources/deployments/pkrdpbku5hwv5v9","message":"At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/arm-deployment-operations for usage details.","details":[{"code":"ResourceDeploymentFailure","target":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg_temp/providers/Microsoft.Compute/virtualMachines/pkrvmbku5hwv5v9","message":"The resource write operation failed to complete successfully, because it reached terminal provisioning state 'Failed'.","details":[{"code":"DiskServiceInternalError","message":"Error getting size of the platform or gallery image. Target: '/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg_temp/providers/Microsoft.Compute/disks/pkrosbku5hwv5v9'."}]}]}}
==> azure-arm: -----[end]-----
==> azure-arm:
2026/02/25 13:49:36 ui: ==> azure-arm:
==> azure-arm: Deleting Virtual Machine deployment and its attached resources...
[packer_logs.txt](https://github.com/user-attachments/files/25616393/packer_logs.txt)
```
Contributor guide
Research direction
Start by tracing the Azure ARM deployment flow around the CreateOrUpdate polling failure shown in the logs, especially the DiskServiceInternalError response. Determine how transient deployment failures are handled and define completion as a retry path that avoids immediately failing for this Azure internal error, with regression coverage if the existing tests support it.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure, go
- Domain
- cloud, devops, infrastructure
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100