1
0
forked from boos/BoosAPI

[codex] add Fedora desktop rpm packaging (#390)

* add Fedora desktop rpm packaging

* harden desktop packaging yaml assertion
This commit is contained in:
Cita
2026-04-02 12:53:28 +08:00
committed by GitHub
parent ed2783e2dd
commit 1407f754b1
6 changed files with 74 additions and 28 deletions
+24 -9
View File
@@ -3,14 +3,29 @@ import { readFileSync } from 'node:fs';
import { resolve } from 'node:path';
describe('release workflow', () => {
it('builds macOS arm64 and x64 on dedicated runners and verifies packaged app architecture', () => {
const workflow = readFileSync(resolve(process.cwd(), '.github/workflows/release.yml'), 'utf8');
expect(workflow).toContain('runner: macos-15-intel');
expect(workflow).toContain('runner: macos-15');
it('builds macOS arm64 and x64 on dedicated runners and verifies packaged app architecture', () => {
const workflow = readFileSync(resolve(process.cwd(), '.github/workflows/release.yml'), 'utf8');
expect(workflow).toContain('runner: macos-15-intel');
expect(workflow).toContain('runner: macos-15');
expect(workflow).toContain('expectedMacArch: x64');
expect(workflow).toContain('expectedMacArch: arm64');
expect(workflow).toContain('Verify packaged macOS architecture');
expect(workflow).toContain('node scripts/desktop/verifyMacArchitecture.mjs');
});
});
expect(workflow).toContain('Verify packaged macOS architecture');
expect(workflow).toContain('node scripts/desktop/verifyMacArchitecture.mjs');
});
it('uploads Linux desktop artifacts for AppImage, deb, and rpm packages', () => {
const workflow = readFileSync(resolve(process.cwd(), '.github/workflows/release.yml'), 'utf8');
expect(workflow).toContain('release/*.AppImage');
expect(workflow).toContain('release/*.deb');
expect(workflow).toContain('release/*.rpm');
});
it('installs rpm tooling on Linux runners before packaging Fedora desktop artifacts', () => {
const workflow = readFileSync(resolve(process.cwd(), '.github/workflows/release.yml'), 'utf8');
expect(workflow).toContain("if: runner.os == 'Linux'");
expect(workflow).toContain('sudo apt-get install --no-install-recommends -y rpm');
});
});