June 19, 2025 Marco

Bicep: The content for this response was already consumed

I recently came across a new error I hadn’t seen before. It suddenly showed up during Bicep deployments that had previously been running just fine days or even weeks ago.

When Does This Error Occur?

The error appears to occur whenever a Bicep deployment fails, but only when triggered via Azure CLI. Deployments run through PowerShell don’t seem to be affected.

It also doesn’t matter what the actual cause of the failure is. It could be due to an Azure Policy blocking the deployment, or simply a wrong parameter value.

Root Cause

Here are a few observations based on my testing:

  • The issue appears to have been introduced in Azure CLI version 2.73.0
  • It doesn’t occur when running deployments via PowerShell
  • The error is triggered as soon as a deployment failure happens, regardless of whether modules are used
  • It seems to be related to how the actual error message is constructed inside Azure CLI
  • The message doesn’t originate from the API itself, but from the requests Python library used internally in Azure CLI, which explains why the error is so generic and not particularly helpful

Here’s an example of the output when using the --debug flag:

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 703, in _run_job
    result = cmd_copy(params)
             ^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 336, in __call__
    return self.handler(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/command_operation.py", line 120, in handler
    return op(**command_args)
           ^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/command_modules/resource/custom.py", line 521, in deploy_arm_template_at_subscription_scope
    return _deploy_arm_template_at_subscription_scope(cmd=cmd,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/command_modules/resource/custom.py", line 560, in _deploy_arm_template_at_subscription_scope
    err_message = _build_http_response_error_message(err)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/command_modules/resource/_utils.py", line 90, in _build_http_response_error_message
    error_txt = http_error.response.internal_response.text
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/requests/models.py", line 926, in text
    if not self.content:
           ^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/requests/models.py", line 897, in content
    raise RuntimeError("The content for this response was already consumed")
RuntimeError: The content for this response was already consumed

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/arm.py", line 109, in handle_template_based_exception
    raise CLIError(ex.inner_exception.error.message)
                   ^^^^^^^^^^^^^^^^^^
AttributeError: 'RuntimeError' object has no attribute 'inner_exception'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/az/lib/python3.12/site-packages/knack/cli.py", line 233, in invoke
    cmd_result = self.invocation.execute(args)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 666, in execute
    raise ex
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 734, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 726, in _run_job
    return cmd_copy.exception_handler(ex)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/arm.py", line 114, in handle_template_based_exception
    raise CLIError(ex)
knack.util.CLIError: The content for this response was already consumed

Solution / Workaround

Use the –debug or –what-if flag

The easiest way to get more detailed error information is to run your deployment with the --debug or --what-if flag, e.g.:

az deployment sub create --location westeurope --template-file main.bicep --debug

This will output known error messages with clearer context, like this:

Code: InvalidTemplateDeployment
Message: The template deployment failed because of policy violation. Please see details for more information.
Exception Details:      (RequestDisallowedByPolicy) Resource 'kv-ipypc6zd6mqek' was disallowed by policy. Policy identifiers: '[{"policyAssignment":{"name":"Azure Key Vault should disable public network access","id":"/subscriptions/{subscriptionId}/resourceGroups/rg-demo/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentId}"},"policyDefinition":{"name":"Azure Key Vault should disable public network access","id":"/providers/Microsoft.Authorization/policyDefinitions/405c5871-3e91-4644-8a63-58e19d68ff5b","version":"1.1.0"}}]'.
        Code: RequestDisallowedByPolicy
        Message: Resource 'kv-ipypc6zd6mqek' was disallowed by policy. Policy identifiers: '[{"policyAssignment":{"name":"Azure Key Vault should disable public network access","id":"/subscriptions/{subscriptionId}/resourceGroups/rg-demo/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentId}"},"policyDefinition":{"name":"Azure Key Vault should disable public network access","id":"/providers/Microsoft.Authorization/policyDefinitions/405c5871-3e91-4644-8a63-58e19d68ff5b","version":"1.1.0"}}]'.
        Target: kv-ipypc6zd6mqek

Downgrade Azure CLI version to 2.72.0

It appears that this error was introduced in Azure CLI version 2.73.0. One possible workaround is to downgrade to version 2.72.0.

 

That’s about it – I hope this helps! Let’s see if this is just a temporary hiccup that gets fixed in a future release.

, ,
Marco Gerber

Marco

Senior Cloud Engineer, keen on Azure and cloud technologies.

Comments (4)

  1. Moha

    Ohh this was really bugging me recently. But it should only be around till 1st of July. Thank you for your post!

  2. Sunny

    Downgrading the version resolved this for me. Thanks a ton for your help!

Leave a Reply

Your email address will not be published. Required fields are marked *