nswag v13.14.4 is ignoring workingDirectory, when used with assembly reference.
Version v13.14.3 doesn't have this issue, but have other issues with ignoring json attributes.
Here is the error:
7>NSwag command line tool for .NET Core Net60, toolchain v13.14.4.0 (NJsonSchema v10.5.2.0 (Newtonsoft.Json v13.0.0.0))
7>Visit http://NSwag.org for more information.
7>NSwag bin directory: C:\Users\xxxxx\.nuget\packages\nswag.msbuild\13.14.4\tools\Net60
7>
7>Executing file 'src/api/api.nswag' with variables 'Configuration=Debug,RuntimeIdentifier=win10-x64,OutDir=xxx,MSBuildProjectDirectory=xxx'...
7>System.IO.FileNotFoundException: The configuration file 'appsettings.json' was not found and is not optional. The expected physical path was 'C:\Users\xxxxx\.nuget\packages\nswag.msbuild\13.14.4\tools\Net60\appsettings.json'.
7> at Microsoft.Extensions.Configuration.FileConfigurationProvider.HandleException(ExceptionDispatchInfo info)
7> at Microsoft.Extensions.Configuration.FileConfigurationProvider.Load(Boolean reload)
7> at Microsoft.Extensions.Configuration.FileConfigurationProvider.Load()
7> at Microsoft.Extensions.Configuration.ConfigurationRoot..ctor(IList`1 providers)
7> at Microsoft.Extensions.Configuration.ConfigurationBuilder.Build()
7> at SDS.SmartSignals.API.Web.Program.Main(String[] args) in C:\Projects\SmartDigitalSolutions\SmaSi_2\src\SDS.SmartSignals.API.Web\Program.cs:line 81
7>--- End of stack trace from previous location ---
7> at Microsoft.Extensions.Hosting.HostFactoryResolver.HostingListener.CreateHost() in C:\projects\nswag\src\NSwag.Commands\HostFactoryResolver.cs:line 271
7> at Microsoft.Extensions.Hosting.HostFactoryResolver.<>c__DisplayClass8_0.<ResolveHostFactory>b__0(String[] args) in C:\projects\nswag\src\NSwag.Commands\HostFactoryResolver.cs:line 75
7> at NSwag.Commands.ServiceProviderResolver.GetServiceProviderWithHostFactoryResolver(Assembly assembly) in C:\projects\nswag\src\NSwag.Commands\HostApplication.cs:line 143
7> at NSwag.Commands.ServiceProviderResolver.GetServiceProvider(Assembly assembly) in C:\projects\nswag\src\NSwag.Commands\HostApplication.cs:line 70
7> at NSwag.Commands.Generation.OpenApiGeneratorCommandBase`1.GetServiceProvider(AssemblyLoader assemblyLoader) in C:\projects\nswag\src\NSwag.Commands\Commands\Generation\OpenApiGeneratorCommandBase.cs:line 298
7> at NSwag.Commands.Generation.AspNetCore.AspNetCoreToSwaggerCommand.RunIsolatedAsync(AssemblyLoader assemblyLoader) in C:\projects\nswag\src\NSwag.Commands\Commands\Generation\AspNetCore\AspNetCoreToOpenApiCommand.cs:line 323
7> at NSwag.Commands.IsolatedCommandBase`1.IsolatedCommandAssemblyLoader`1.Run(String commandType, String commandData, String[] assemblyPaths, String[] referencePaths) in C:\projects\nswag\src\NSwag.Commands\Commands\IsolatedCommandBase.cs:line 76
7> at NSwag.Commands.IsolatedCommandBase`1.<>c__DisplayClass17_0.<RunIsolatedAsync>b__0() in C:\projects\nswag\src\NSwag.Commands\Commands\IsolatedCommandBase.cs:line 61
7> at System.Threading.Tasks.Task`1.InnerInvoke()
7> at System.Threading.Tasks.Task.<>c.<.cctor>b__271_0(Object obj)
7> at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
7>--- End of stack trace from previous location ---
7> at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
7> at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
7>--- End of stack trace from previous location ---
7> at NSwag.Commands.IsolatedCommandBase`1.RunIsolatedAsync(String configurationFile) in C:\projects\nswag\src\NSwag.Commands\Commands\IsolatedCommandBase.cs:line 61
7> at NSwag.Commands.IsolatedSwaggerOutputCommandBase`1.RunAsync(CommandLineProcessor processor, IConsoleHost host) in C:\projects\nswag\src\NSwag.Commands\Commands\IsolatedSwaggerOutputCommandBase.cs:line 51
7> at NSwag.Commands.Generation.AspNetCore.AspNetCoreToSwaggerCommand.RunAsync(CommandLineProcessor processor, IConsoleHost host) in C:\projects\nswag\src\NSwag.Commands\Commands\Generation\AspNetCore\AspNetCoreToOpenApiCommand.cs:line 98
7> at NSwag.Commands.NSwagDocumentBase.GenerateSwaggerDocumentAsync() in C:\projects\nswag\src\NSwag.Commands\NSwagDocumentBase.cs:line 280
7> at NSwag.Commands.NSwagDocument.ExecuteAsync() in C:\projects\nswag\src\NSwag.Commands\NSwagDocument.cs:line 81
7> at NSwag.Commands.Document.ExecuteDocumentCommand.ExecuteDocumentAsync(IConsoleHost host, String filePath) in C:\projects\nswag\src\NSwag.Commands\Commands\Document\ExecuteDocumentCommand.cs:line 85
7> at NSwag.Commands.Document.ExecuteDocumentCommand.RunAsync(CommandLineProcessor processor, IConsoleHost host) in C:\projects\nswag\src\NSwag.Commands\Commands\Document\ExecuteDocumentCommand.cs:line 32
7> at NConsole.CommandLineProcessor.ProcessSingleAsync(String[] args, Object input)
7> at NConsole.CommandLineProcessor.ProcessAsync(String[] args, Object input)
7> at NConsole.CommandLineProcessor.Process(String[] args, Object input)
7> at NSwag.Commands.NSwagCommandProcessor.Process(String[] args) in C:\projects\nswag\src\NSwag.Commands\NSwagCommandProcessor.cs:line 55
integrated via:
<Exec WorkingDirectory="$(ProjectDir)" EnvironmentVariables="ASPNETCORE_ENVIRONMENT=Development" Command="$(NSwagExe_Net60) run src/api/api.nswag /variables:Configuration=$(Configuration),RuntimeIdentifier=$(RuntimeIdentifier),OutDir=$(OutDir),MSBuildProjectDirectory=$(MSBuildProjectDirectory)" />
nswag v13.14.4 is ignoring workingDirectory, when used with assembly reference. Version v13.14.3 doesn't have this issue, but have other issues with ignoring json attributes.
Here is the error:
integrated via:
with following api.nswag: