Publish win-arm64 release (#28)

This commit is contained in:
Matt Parker
2025-12-10 23:59:46 +10:00
committed by GitHub
parent 441bc18776
commit ed4c3c21e6
6 changed files with 127 additions and 32 deletions

View 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];
}
}