Skip to content

Provisioning fails on azure service bus roles #9628

@mip1983

Description

@mip1983

Is there an existing issue for this?

  • I have searched the existing issues

Describe the bug

I'm using the Azure Service Bus integration e.g.

var serviceBus = builder.ExecutionContext.IsPublishMode ?
    builder.AddAzureServiceBus("servicebus") :
    builder.AddAzureServiceBus("servicebus").RunAsEmulator().WithExplicitStart();

var queue = serviceBus.AddServiceBusQueue("queue");

The service bus is referenced by a function app in Aspire:

.WithReference("servicebus").WaitFor("servicebus")
.WithReference("queue").WaitFor("queue")

And in the function app itself:

[Function(nameof(MyFunctionApp))]
public async Task Run(
    [ServiceBusTrigger("queue", Connection = "servicebus")]
    ServiceBusReceivedMessage message,
    ServiceBusMessageActions messageActions)
{
    // code here
}

I'm able to run it and use it as above with the emulator locally, and it seems ok deployed to Azure, but in the Aspire dashboard locally it shows me:

Image

This is what I see in the console ouput for it:

Provisioning serviceBus-roles...
WARNING: A new Bicep release is available: v0.36.1. Upgrade now by running "az bicep upgrade".
WARNING: C:\Users\MatthewPaul\AppData\Local\Temp\aspire4owmvcnl.bj1\serviceBus-roles.module.bicep(2,7) : Warning no-unused-params: Parameter "location" is declared but never used. [https://aka.ms/bicep/linter/no-unused-params]
C:\Users\MatthewPaul\AppData\Local\Temp\aspire4owmvcnl.bj1\serviceBus-roles.module.bicep(4,7) : Warning no-unused-params: Parameter "servicebus_outputs_name" is declared but never used. [https://aka.ms/bicep/linter/no-unused-params]
Deploying serviceBus-roles to rg-ecodriver-app-dev
Error provisioning serviceBus-roles.
System.InvalidOperationException: No output for name
at Aspire.Hosting.Azure.BicepOutputReference.get_Value() in //src/Aspire.Hosting.Azure/AzureBicepResource.cs:line 397
at Aspire.Hosting.Azure.BicepOutputReference.GetValueAsync(CancellationToken cancellationToken) in /
/src/Aspire.Hosting.Azure/AzureBicepResource.cs:line 385
at Aspire.Hosting.Azure.Provisioning.BicepProvisioner.SetParametersAsync(JsonObject parameters, AzureBicepResource resource, Boolean skipDynamicValues, CancellationToken cancellationToken) in //src/Aspire.Hosting.Azure/Provisioning/Provisioners/BicepProvisioner.cs:line 486
at Aspire.Hosting.Azure.Provisioning.BicepProvisioner.GetOrCreateResourceAsync(AzureBicepResource resource, ProvisioningContext context, CancellationToken cancellationToken) in /
/src/Aspire.Hosting.Azure/Provisioning/Provisioners/BicepProvisioner.cs:line 185
at Aspire.Hosting.Azure.AzureProvisioner.ProcessResourceAsync(IConfiguration configuration, Lazy1 provisioningContextLazy, ValueTuple2 resource, CancellationToken cancellationToken) in /_/src/Aspire.Hosting.Azure/Provisioning/Provisioners/AzureProvisioner.cs:line 316

Expected Behavior

Should it be trying to provision roles if I'm running as emulator? Why the failure message?

Steps To Reproduce

Just using the integration as detailed above with a function app.

Exceptions (if any)

Warning no-unused-params: Parameter "servicebus_outputs_name" is declared but never used. [https://aka.ms/bicep/linter/no-unused-params]
Deploying serviceBus-roles to rg-ecodriver-app-dev
Error provisioning serviceBus-roles.
System.InvalidOperationException: No output for name
at Aspire.Hosting.Azure.BicepOutputReference.get_Value() in //src/Aspire.Hosting.Azure/AzureBicepResource.cs:line 397
at Aspire.Hosting.Azure.BicepOutputReference.GetValueAsync(CancellationToken cancellationToken) in /
/src/Aspire.Hosting.Azure/AzureBicepResource.cs:line 385
at Aspire.Hosting.Azure.Provisioning.BicepProvisioner.SetParametersAsync(JsonObject parameters, AzureBicepResource resource, Boolean skipDynamicValues, CancellationToken cancellationToken) in //src/Aspire.Hosting.Azure/Provisioning/Provisioners/BicepProvisioner.cs:line 486
at Aspire.Hosting.Azure.Provisioning.BicepProvisioner.GetOrCreateResourceAsync(AzureBicepResource resource, ProvisioningContext context, CancellationToken cancellationToken) in /
/src/Aspire.Hosting.Azure/Provisioning/Provisioners/BicepProvisioner.cs:line 185
at Aspire.Hosting.Azure.AzureProvisioner.ProcessResourceAsync(IConfiguration configuration, Lazy1 provisioningContextLazy, ValueTuple2 resource, CancellationToken cancellationToken) in /_/src/Aspire.Hosting.Azure/Provisioning/Provisioners/AzureProvisioner.cs:line 316

.NET Version info

.NET SDK:
Version: 9.0.300
Commit: 15606fe0a8
Workload version: 9.0.300-manifests.af4147de
MSBuild version: 17.14.5+edd3bbf37

Runtime Environment:
OS Name: Windows
OS Version: 10.0.26100
OS Platform: Windows
RID: win-x64
Base Path: C:\Program Files\dotnet\sdk\9.0.300\

.NET workloads installed:
[wasm-tools]
Installation Source: VS 17.14.36127.28, VS 17.14.36127.28
Manifest Version: 9.0.5/9.0.100
Manifest Path: C:\Program Files\dotnet\sdk-manifests\9.0.100\microsoft.net.workload.mono.toolchain.current\9.0.5\WorkloadManifest.json
Install Type: Msi

[maui-windows]
Installation Source: VS 17.14.36127.28, VS 17.14.36127.28
Manifest Version: 9.0.51/9.0.100
Manifest Path: C:\Program Files\dotnet\sdk-manifests\9.0.100\microsoft.net.sdk.maui\9.0.51\WorkloadManifest.json
Install Type: Msi

[aspire]
Installation Source: VS 17.14.36127.28, VS 17.14.36127.28
Manifest Version: 8.2.2/8.0.100
Manifest Path: C:\Program Files\dotnet\sdk-manifests\8.0.100\microsoft.net.sdk.aspire\8.2.2\WorkloadManifest.json
Install Type: Msi

[maccatalyst]
Installation Source: VS 17.14.36127.28, VS 17.14.36127.28
Manifest Version: 18.4.9288/9.0.100
Manifest Path: C:\Program Files\dotnet\sdk-manifests\9.0.100\microsoft.net.sdk.maccatalyst\18.4.9288\WorkloadManifest.json
Install Type: Msi

[ios]
Installation Source: VS 17.14.36127.28, VS 17.14.36127.28
Manifest Version: 18.4.9288/9.0.100
Manifest Path: C:\Program Files\dotnet\sdk-manifests\9.0.100\microsoft.net.sdk.ios\18.4.9288\WorkloadManifest.json
Install Type: Msi

[wasm-tools-net6]
Installation Source: VS 17.14.36127.28
Manifest Version: 9.0.5/9.0.100
Manifest Path: C:\Program Files\dotnet\sdk-manifests\9.0.100\microsoft.net.workload.mono.toolchain.net6\9.0.5\WorkloadManifest.json
Install Type: Msi

[android]
Installation Source: VS 17.14.36127.28, VS 17.14.36127.28
Manifest Version: 35.0.61/9.0.100
Manifest Path: C:\Program Files\dotnet\sdk-manifests\9.0.100\microsoft.net.sdk.android\35.0.61\WorkloadManifest.json
Install Type: Msi

Configured to use loose manifests when installing new manifests.

Host:
Version: 9.0.5
Architecture: x64
Commit: e36e4d1a8f

.NET SDKs installed:
8.0.410 [C:\Program Files\dotnet\sdk]
9.0.204 [C:\Program Files\dotnet\sdk]
9.0.300 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
Microsoft.AspNetCore.App 8.0.16 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 9.0.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 6.0.36 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 7.0.20 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.10 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.16 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 9.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 6.0.36 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 8.0.10 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 8.0.15 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 8.0.16 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 9.0.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Other architectures found:
x86 [C:\Program Files (x86)\dotnet]
registered at [HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x86\InstallLocation]

Environment variables:
Not set

global.json file:
Not found

Anything else?

.NET 9.0.300
Aspire 9.3
Visual Studio 2022 Preview

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-integrationsIssues pertaining to Aspire Integrations packagesazureIssues associated specifically with scenarios tied to using Azureazure-servicebus

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions