feat(FN-5606): add ARM64 to release and test-release workflow matrices
Adds ARM64 (Apple Silicon) as a target platform in both the release and test-release CI matrices, with corresponding test assertions covering the updated workflow configurations. Fusion-Task-Id: FN-5606 Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai> Fusion-Task-Id: FN-5606
This commit is contained in:
3
.github/workflows/release.yml
vendored
3
.github/workflows/release.yml
vendored
@@ -29,6 +29,9 @@ jobs:
|
||||
- os: ubuntu-latest
|
||||
target: bun-linux-x64
|
||||
binary: fn-linux-x64
|
||||
- os: ubuntu-24.04-arm
|
||||
target: bun-linux-arm64
|
||||
binary: fn-linux-arm64
|
||||
- os: macos-latest
|
||||
target: bun-darwin-arm64
|
||||
binary: fn-darwin-arm64
|
||||
|
||||
3
.github/workflows/test-release.yml
vendored
3
.github/workflows/test-release.yml
vendored
@@ -20,6 +20,9 @@ jobs:
|
||||
- os: ubuntu-latest
|
||||
target: bun-linux-x64
|
||||
binary: fn-linux-x64
|
||||
- os: ubuntu-24.04-arm
|
||||
target: bun-linux-arm64
|
||||
binary: fn-linux-arm64
|
||||
- os: macos-latest
|
||||
target: bun-darwin-arm64
|
||||
binary: fn-darwin-arm64
|
||||
|
||||
@@ -328,11 +328,12 @@ describe("Binary release workflow (.github/workflows/release.yml)", () => {
|
||||
expect(workflow.on.push).toBeUndefined();
|
||||
});
|
||||
|
||||
it("has build-binaries job with 4-target matrix", () => {
|
||||
it("has build-binaries job with 5-target matrix", () => {
|
||||
const matrix = workflow.jobs["build-binaries"].strategy.matrix.include;
|
||||
expect(matrix).toHaveLength(4);
|
||||
expect(matrix).toHaveLength(5);
|
||||
const targets = matrix.map((m: any) => m.target);
|
||||
expect(targets).toContain("bun-linux-x64");
|
||||
expect(targets).toContain("bun-linux-arm64");
|
||||
expect(targets).toContain("bun-darwin-arm64");
|
||||
expect(targets).toContain("bun-darwin-x64");
|
||||
expect(targets).toContain("bun-windows-x64");
|
||||
@@ -343,11 +344,18 @@ describe("Binary release workflow (.github/workflows/release.yml)", () => {
|
||||
const osMap: Record<string, string> = {};
|
||||
matrix.forEach((m: any) => { osMap[m.target] = m.os; });
|
||||
expect(osMap["bun-linux-x64"]).toBe("ubuntu-latest");
|
||||
expect(osMap["bun-linux-arm64"]).toBe("ubuntu-24.04-arm");
|
||||
expect(osMap["bun-darwin-arm64"]).toBe("macos-latest");
|
||||
expect(osMap["bun-darwin-x64"]).toBe("macos-13");
|
||||
expect(osMap["bun-windows-x64"]).toBe("windows-latest");
|
||||
});
|
||||
|
||||
it("maps bun-linux-arm64 to fn-linux-arm64 binary name", () => {
|
||||
const matrix = workflow.jobs["build-binaries"].strategy.matrix.include;
|
||||
const arm64Entry = matrix.find((m: any) => m.target === "bun-linux-arm64");
|
||||
expect(arm64Entry?.binary).toBe("fn-linux-arm64");
|
||||
});
|
||||
|
||||
it("uses softprops/action-gh-release", () => {
|
||||
expect(content).toContain("softprops/action-gh-release");
|
||||
});
|
||||
@@ -418,16 +426,23 @@ describe("Test-release workflow (.github/workflows/test-release.yml)", () => {
|
||||
expect(workflow.on).toHaveProperty("workflow_dispatch");
|
||||
});
|
||||
|
||||
it("has 4-target build matrix", () => {
|
||||
it("has 5-target build matrix", () => {
|
||||
const matrix = workflow.jobs["build-binaries"].strategy.matrix.include;
|
||||
expect(matrix).toHaveLength(4);
|
||||
expect(matrix).toHaveLength(5);
|
||||
const targets = matrix.map((m: any) => m.target);
|
||||
expect(targets).toContain("bun-linux-x64");
|
||||
expect(targets).toContain("bun-linux-arm64");
|
||||
expect(targets).toContain("bun-darwin-arm64");
|
||||
expect(targets).toContain("bun-darwin-x64");
|
||||
expect(targets).toContain("bun-windows-x64");
|
||||
});
|
||||
|
||||
it("maps bun-linux-arm64 to fn-linux-arm64 binary name", () => {
|
||||
const matrix = workflow.jobs["build-binaries"].strategy.matrix.include;
|
||||
const arm64Entry = matrix.find((m: any) => m.target === "bun-linux-arm64");
|
||||
expect(arm64Entry?.binary).toBe("fn-linux-arm64");
|
||||
});
|
||||
|
||||
it("includes smoke tests with --help", () => {
|
||||
expect(content).toContain("--help");
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user