diff --git a/Directory.Packages.props b/Directory.Packages.props index 04732bf5..27b7794d 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -22,6 +22,7 @@ + @@ -149,4 +150,4 @@ - + \ No newline at end of file diff --git a/src/Dfe.SignIn.AppHost/AppHost.cs b/src/Dfe.SignIn.AppHost/AppHost.cs index d898de9b..6e081b2f 100644 --- a/src/Dfe.SignIn.AppHost/AppHost.cs +++ b/src/Dfe.SignIn.AppHost/AppHost.cs @@ -1,8 +1,26 @@ using System.Reflection; +using Azure.Identity; using Dfe.SignIn.AppHost; using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.Configuration.AzureAppConfiguration; var builder = DistributedApplication.CreateBuilder(args); + +if (!string.IsNullOrEmpty(builder.Configuration.GetConnectionString("AppConfiguration"))) { + var appConfigurationTag = builder.Configuration["AppConfiguration:Tag"]; + if (string.IsNullOrEmpty(appConfigurationTag)) { + throw new ArgumentNullException("AppConfiguration Tag missing"); + } + builder.Configuration.AddAzureAppConfiguration(options => { + options.Connect(builder.Configuration["ConnectionStrings:AppConfiguration"]) + .Select(KeyFilter.Any, "dev"); + + options.ConfigureKeyVault(kv => { + kv.SetCredential(new DefaultAzureCredential()); + }); + }); +} + builder.Configuration.AddUserSecrets(Assembly.GetExecutingAssembly(), optional: true, reloadOnChange: true); #pragma warning disable ASPIRECERTIFICATES001 // Type is for evaluation purposes only and is subject to change or removal in future updates. Suppress this diagnostic to proceed. @@ -41,6 +59,7 @@ var selectOrgConfig = builder.Configuration.GetSection("SelectOrganisation"); var internalApiConfig = builder.Configuration.GetSection("InternalApiClient"); var efConfig = builder.Configuration.GetSection("EntityFramework"); +var assets = builder.Configuration.GetSection("Assets"); var dotNetComponents = builder.Configuration.GetSection("Components:DotNet"); var nodeComponents = builder.Configuration.GetSection("Components:Node"); @@ -52,6 +71,8 @@ .WithEnvironment("GovNotify__ApiKey", govNotifyConfig["ApiKey"]) .WithEnvironment("RaiseSupportTicketByEmail__SupportEmailAddress", supportEmailConfig["SupportEmailAddress"]) .WithEnvironment("RaiseSupportTicketByEmail__EmailTemplateId", supportEmailConfig["EmailTemplateId"]) + .WithEnvironment("Assets__BaseAddress", assets["BaseAddress"]) + .WithEnvironment("Assets__FrontendVersion", assets["FrontendVersion"]) .WaitFor(frontend) .WaitFor(redis); } @@ -66,6 +87,7 @@ .WithEnvironment("EntityFramework__Organisations__Name", efConfig["Organisations:Name"]) .WithEnvironment("EntityFramework__Organisations__Username", efConfig["Organisations:Username"]) .WithEnvironment("EntityFramework__Organisations__Password", efConfig["Organisations:Password"]) + .WithEnvironment("PublicApiSecretEncryption__Key", publicApiSecretConfig["Key"]) .WithEnvironment("InternalApiClient__ClientId", internalApiConfig["ClientId"]) .WithEnvironment("InternalApiClient__ClientSecret", internalApiConfig["ClientSecret"]) .WithEnvironment("InternalApiClient__Tenant", internalApiConfig["Tenant"]) @@ -95,6 +117,8 @@ .WithEnvironment("ExternalId__TenantId", externalIdConfig["TenantId"]) .WithEnvironment("Session__DurationInMinutes", sessionConfig["DurationInMinutes"]) .WithEnvironment("Session__NotifyRemainingMinutes", sessionConfig["NotifyRemainingMinutes"]) + .WithEnvironment("Assets__BaseAddress", assets["BaseAddress"]) + .WithEnvironment("Assets__FrontendVersion", assets["FrontendVersion"]) .WaitFor(frontend) .WaitFor(redis); } @@ -154,6 +178,7 @@ .WaitForIfPresent(interactor); } -builder.AddExecutable("tool-tls-proxy", "pwsh", "../../", "-Command", "Start-DsiTlsProxy"); - +if (nodeComponents.GetValue("Run-TlsProxy", false)) { + builder.AddExecutable("tool-tls-proxy", "pwsh", "../../", "-Command", "Start-DsiTlsProxy"); +} await builder.Build().RunAsync(); diff --git a/src/Dfe.SignIn.AppHost/Dfe.SignIn.AppHost.csproj b/src/Dfe.SignIn.AppHost/Dfe.SignIn.AppHost.csproj index bc5fee37..426b3666 100644 --- a/src/Dfe.SignIn.AppHost/Dfe.SignIn.AppHost.csproj +++ b/src/Dfe.SignIn.AppHost/Dfe.SignIn.AppHost.csproj @@ -12,7 +12,8 @@ - + + diff --git a/src/Dfe.SignIn.Core.UseCases/CoreUseCasesAssembly.cs b/src/Dfe.SignIn.Core.UseCases/CoreUseCasesAssembly.cs index 0963f6a2..83e14457 100644 --- a/src/Dfe.SignIn.Core.UseCases/CoreUseCasesAssembly.cs +++ b/src/Dfe.SignIn.Core.UseCases/CoreUseCasesAssembly.cs @@ -1,6 +1,6 @@ namespace Dfe.SignIn.Core.UseCases; /// -/// An empty type representing the core use cases assembly. +/// An empty type representing the core use cases assembly.. /// public static class CoreUseCasesAssembly { }