Browse Source

Set `Environment.ExitCode` if there is a `CliUsaeException` or external error.

Resovle #20090
pull/20092/head
maliming 2 years ago
parent
commit
dc98548269
No known key found for this signature in database GPG Key ID: A646B9CB645ECEA4
  1. 1
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/CliService.cs
  2. 10
      framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/CmdHelper.cs

1
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/CliService.cs

@ -83,6 +83,7 @@ public class CliService : ITransientDependency
catch (CliUsageException usageException)
{
Logger.LogWarning(usageException.Message);
Environment.ExitCode = 1;
}
catch (Exception ex)
{

10
framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Utils/CmdHelper.cs

@ -12,12 +12,12 @@ public class CmdHelper : ICmdHelper, ITransientDependency
private const int SuccessfulExitCode = 0;
protected AbpCliOptions CliOptions { get; }
public CmdHelper(IOptionsSnapshot<AbpCliOptions> cliOptions)
{
CliOptions = cliOptions.Value;
}
public void Open(string pathOrUrl)
{
if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
@ -43,7 +43,7 @@ public class CmdHelper : ICmdHelper, ITransientDependency
{
HideNewCommandWindow(procStartInfo);
}
Process.Start(procStartInfo)?.WaitForExit();
}
@ -74,6 +74,7 @@ public class CmdHelper : ICmdHelper, ITransientDependency
process?.WaitForExit();
exitCode = process.ExitCode;
Environment.ExitCode = exitCode;
}
}
@ -144,6 +145,7 @@ public class CmdHelper : ICmdHelper, ITransientDependency
process.WaitForExit();
exitCode = process.ExitCode;
Environment.ExitCode = exitCode;
}
return output.Trim();
@ -160,7 +162,7 @@ public class CmdHelper : ICmdHelper, ITransientDependency
{
procStartInfo.WorkingDirectory = workingDirectory;
}
if (CliOptions.AlwaysHideExternalCommandOutput)
{
HideNewCommandWindow(procStartInfo);

Loading…
Cancel
Save