CI: stand up Gitea Actions (TST-03) + fix the defects it caught (#123)
Make the authored CI pipeline execute and go green on the co-located runner (portable + java), fix the five real latent defects the first real run surfaced (codegen-check null, stale rust proto, orphan-terminator Linux path, stale java worker codegen, py3.12 event loop), provision pwsh + Gradle for the self-hosted act image, and disable the Windows jobs (act host-mode broken). TST-03 -> Done. https://claude.ai/code/session_01DMXXvNuPekkkrTEyPNxEkW
This commit was merged in pull request #123.
This commit is contained in:
@@ -13,7 +13,19 @@ namespace ZB.MOM.WW.MxGateway.Tests.Gateway.Workers;
|
||||
/// </summary>
|
||||
public sealed class OrphanWorkerTerminatorTests
|
||||
{
|
||||
private const string WorkerExecutablePath = @"C:\app\src\ZB.MOM.WW.MxGateway.Worker\bin\x86\Release\ZB.MOM.WW.MxGateway.Worker.exe";
|
||||
// An OS-appropriate, already-normalized absolute path so Path.GetFullPath (used by the
|
||||
// terminator to resolve the configured path) is idempotent and the exact-match compare holds
|
||||
// on every platform. A hard-coded Windows literal (C:\...) is not rooted on Linux, so
|
||||
// Path.GetFullPath there prepends the cwd and the match fails — the terminator is a
|
||||
// Windows-only feature in production, but its matching logic must still be testable on the
|
||||
// Linux CI runner.
|
||||
private static readonly string WorkerExecutablePath = Path.GetFullPath(Path.Combine(
|
||||
Path.GetTempPath(),
|
||||
"MxGatewayOrphanTests",
|
||||
"bin",
|
||||
"x86",
|
||||
"Release",
|
||||
"ZB.MOM.WW.MxGateway.Worker.exe"));
|
||||
|
||||
/// <summary>Verifies that orphan worker processes matching the configured executable path are killed.</summary>
|
||||
[Fact]
|
||||
@@ -59,7 +71,10 @@ public sealed class OrphanWorkerTerminatorTests
|
||||
// not our worker and must be left alone.
|
||||
FakeProcessInspector inspector = new(
|
||||
[
|
||||
new RunningProcessInfo(301, @"C:\other\place\ZB.MOM.WW.MxGateway.Worker.exe"),
|
||||
new RunningProcessInfo(301, Path.GetFullPath(Path.Combine(
|
||||
Path.GetTempPath(),
|
||||
"MxGatewayOrphanTests-other",
|
||||
"ZB.MOM.WW.MxGateway.Worker.exe"))),
|
||||
]);
|
||||
OrphanWorkerTerminator terminator = CreateTerminator(inspector);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user