Files
SharpIDE/iac/Deploy/Steps/RestoreAndBuildStep.cs
2025-11-14 23:19:18 +10:00

30 lines
798 B
C#

using CliWrap.Buffered;
using ParallelPipelines.Domain.Entities;
using ParallelPipelines.Host.Helpers;
using ParallelPipelines.Host.InternalHelpers;
namespace Deploy.Steps;
public class RestoreAndBuildStep : IStep
{
public async Task<BufferedCommandResult?[]?> RunStep(CancellationToken cancellationToken)
{
var slnFileName = DeploymentConstants.SolutionFileName;
var slnFile = await PipelineFileHelper.GitRootDirectory.GetFile(slnFileName);
var restoreResult = await PipelineCliHelper.RunCliCommandAsync(
"dotnet",
$"restore {slnFile.FullName}",
cancellationToken
);
var buildResult = await PipelineCliHelper.RunCliCommandAsync(
"dotnet",
$"build {slnFile.FullName} --no-restore -c Release",
cancellationToken
);
return [restoreResult, buildResult];
}
}