Publish win-arm64 release (#28)
This commit is contained in:
31
iac/Deploy/Steps/CreateWindowsArm64Release.cs
Normal file
31
iac/Deploy/Steps/CreateWindowsArm64Release.cs
Normal file
@@ -0,0 +1,31 @@
|
||||
using CliWrap.Buffered;
|
||||
using ParallelPipelines.Application.Attributes;
|
||||
using ParallelPipelines.Domain.Entities;
|
||||
using ParallelPipelines.Host.Helpers;
|
||||
|
||||
namespace Deploy.Steps;
|
||||
|
||||
[DependsOnStep<RestoreAndBuildStep>]
|
||||
[DependsOnStep<CreateWindowsRelease>]
|
||||
public class CreateWindowsArm64Release : IStep
|
||||
{
|
||||
public async Task<BufferedCommandResult?[]?> RunStep(CancellationToken cancellationToken)
|
||||
{
|
||||
var godotPublishDirectory = await PipelineFileHelper.GitRootDirectory.GetDirectory("./artifacts/publish-godot");
|
||||
godotPublishDirectory.Create();
|
||||
var windowsPublishDirectory = await godotPublishDirectory.GetDirectory("./win-arm64");
|
||||
windowsPublishDirectory.Create();
|
||||
|
||||
var godotProjectFile = await PipelineFileHelper.GitRootDirectory.GetFile("./src/SharpIDE.Godot/project.godot");
|
||||
|
||||
var godotExportResult = await PipelineCliHelper.RunCliCommandAsync(
|
||||
"godot",
|
||||
$"--headless --verbose --export-release Windows-arm64 --project {godotProjectFile.GetFullNameUnix()}",
|
||||
cancellationToken
|
||||
);
|
||||
|
||||
var windowsZipFile = await windowsPublishDirectory.ZipDirectoryToFile($"{PipelineFileHelper.GitRootDirectory.FullName}/artifacts/publish-godot/sharpide-win-arm64.zip");
|
||||
|
||||
return [godotExportResult];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user