From b06c3aa61407b05023ba3a7c442c5839735157bc Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Thu, 3 Apr 2025 15:01:26 -0700 Subject: [PATCH 1/3] Make DistributedApplicationExecutionContext.PublisherName not nullable Contributes to #7811 --- src/Aspire.Hosting/DistributedApplicationExecutionContext.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Aspire.Hosting/DistributedApplicationExecutionContext.cs b/src/Aspire.Hosting/DistributedApplicationExecutionContext.cs index 0a362d250ca..119d0ffecdd 100644 --- a/src/Aspire.Hosting/DistributedApplicationExecutionContext.cs +++ b/src/Aspire.Hosting/DistributedApplicationExecutionContext.cs @@ -36,7 +36,7 @@ public DistributedApplicationExecutionContext(DistributedApplicationOperation op /// /// The name of the publisher that is being used if is set to . /// - public string? PublisherName { get; set; } + public string PublisherName { get; set; } private readonly DistributedApplicationExecutionContextOptions? _options; From 1cf5dbce7be5df1c09f854a663e4bd23f2971fa3 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Thu, 3 Apr 2025 15:05:04 -0700 Subject: [PATCH 2/3] Improve ctor --- .../DistributedApplicationExecutionContextOptions.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Aspire.Hosting/DistributedApplicationExecutionContextOptions.cs b/src/Aspire.Hosting/DistributedApplicationExecutionContextOptions.cs index 95a7b1df8f3..f2dfe06810f 100644 --- a/src/Aspire.Hosting/DistributedApplicationExecutionContextOptions.cs +++ b/src/Aspire.Hosting/DistributedApplicationExecutionContextOptions.cs @@ -21,7 +21,7 @@ public DistributedApplicationExecutionContextOptions(DistributedApplicationOpera /// /// Indicates whether the AppHost is running in Publish mode or Run mode. /// The publisher name if in Publish mode. - public DistributedApplicationExecutionContextOptions(DistributedApplicationOperation operation, string? publisherName = null) + public DistributedApplicationExecutionContextOptions(DistributedApplicationOperation operation, string? publisherName) { this.Operation = operation; this.PublisherName = publisherName; @@ -38,7 +38,7 @@ public DistributedApplicationExecutionContextOptions(DistributedApplicationOpera public DistributedApplicationOperation Operation { get; } /// - /// The name of the publisher if running in pbublish mode. + /// The name of the publisher if running in publish mode. /// public string? PublisherName { get; } } From d0c1a6903217dc310c9ebba4f6dc35a7c1cc21cc Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Thu, 3 Apr 2025 15:56:39 -0700 Subject: [PATCH 3/3] Prevent null publisher name --- src/Aspire.Hosting/DistributedApplicationBuilder.cs | 3 ++- .../DistributedApplicationExecutionContextOptions.cs | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/Aspire.Hosting/DistributedApplicationBuilder.cs b/src/Aspire.Hosting/DistributedApplicationBuilder.cs index dc262198313..9eb7c04ebc4 100644 --- a/src/Aspire.Hosting/DistributedApplicationBuilder.cs +++ b/src/Aspire.Hosting/DistributedApplicationBuilder.cs @@ -130,7 +130,8 @@ private DistributedApplicationExecutionContextOptions BuildExecutionContextOptio { DistributedApplicationOperation.Run => new DistributedApplicationExecutionContextOptions(operation), DistributedApplicationOperation.Inspect => new DistributedApplicationExecutionContextOptions(operation), - _ => new DistributedApplicationExecutionContextOptions(operation, _innerBuilder.Configuration["Publishing:Publisher"]) + DistributedApplicationOperation.Publish => new DistributedApplicationExecutionContextOptions(operation, _innerBuilder.Configuration["Publishing:Publisher"] ?? "manifest"), + _ => throw new DistributedApplicationException("Invalid operation specified. Valid operations are 'publish', 'inspect', or 'run'.") }; } diff --git a/src/Aspire.Hosting/DistributedApplicationExecutionContextOptions.cs b/src/Aspire.Hosting/DistributedApplicationExecutionContextOptions.cs index f2dfe06810f..b3965e064b5 100644 --- a/src/Aspire.Hosting/DistributedApplicationExecutionContextOptions.cs +++ b/src/Aspire.Hosting/DistributedApplicationExecutionContextOptions.cs @@ -12,8 +12,9 @@ public class DistributedApplicationExecutionContextOptions /// Constructs a . /// /// Indicates whether the AppHost is running in Publish mode or Run mode. - public DistributedApplicationExecutionContextOptions(DistributedApplicationOperation operation) : this(operation, null) + public DistributedApplicationExecutionContextOptions(DistributedApplicationOperation operation) { + this.Operation = operation; } /// @@ -21,7 +22,7 @@ public DistributedApplicationExecutionContextOptions(DistributedApplicationOpera /// /// Indicates whether the AppHost is running in Publish mode or Run mode. /// The publisher name if in Publish mode. - public DistributedApplicationExecutionContextOptions(DistributedApplicationOperation operation, string? publisherName) + public DistributedApplicationExecutionContextOptions(DistributedApplicationOperation operation, string publisherName) { this.Operation = operation; this.PublisherName = publisherName;