mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-25 03:45:46 -06:00
ci: expand Linux installer verification (#123849)
This commit is contained in:
committed by
GitHub
parent
386b12ba9c
commit
dc55a7d08d
@@ -16,9 +16,22 @@ describe("website installer sync workflow", () => {
|
||||
}
|
||||
});
|
||||
|
||||
it("verifies installers on Linux Docker plus native macOS and Windows runners", () => {
|
||||
it("verifies installers across Linux privilege and package-manager paths", () => {
|
||||
expect(workflow).toContain("linux-docker:");
|
||||
expect(workflow.match(/timeout --kill-after=30s 20m docker run --rm/g)?.length).toBe(2);
|
||||
expect(workflow.match(/timeout --kill-after=30s 20m docker run --rm/g)?.length).toBe(5);
|
||||
expect(workflow).toContain("linux-build-tools-failure:");
|
||||
expect(workflow).toContain("/tmp/build-tools-stub-triggered");
|
||||
expect(workflow).toContain('grep -aFq "Installing build tools failed"');
|
||||
expect(workflow).toContain('grep -aFq "Build tools installed"');
|
||||
expect(workflow).toContain("linux-non-root:");
|
||||
expect(workflow).toContain("sudo -u installer -H bash");
|
||||
expect(workflow).toContain('test "$(npm config get prefix)" = "$HOME/.npm-global"');
|
||||
expect(workflow).toContain(
|
||||
`grep -Fxq 'export PATH="$HOME/.npm-global/bin:$PATH"' "$HOME/.bashrc"`,
|
||||
);
|
||||
expect(workflow).toContain("fedora-installer:");
|
||||
expect(workflow).toContain("user: [root, non-root]");
|
||||
expect(workflow.match(/fedora:44/g)?.length).toBe(2);
|
||||
expect(workflow).not.toContain("timeout 20m docker run --rm");
|
||||
expect(workflow).not.toMatch(/(^|\n)\s+docker run --rm/u);
|
||||
expect(workflow).toContain("bash /tmp/install.sh --version latest && openclaw --version");
|
||||
@@ -39,7 +52,20 @@ describe("website installer sync workflow", () => {
|
||||
});
|
||||
|
||||
it("syncs verified scripts to openclaw.ai only after all installer checks pass", () => {
|
||||
expect(workflow).toContain("needs: [static, linux-docker, macos-installer, windows-installer]");
|
||||
const syncNeeds = workflow.match(/ sync-website:\n needs:\n((?: - [^\n]+\n)+)/u);
|
||||
expect(syncNeeds?.[1]).toBe(
|
||||
[
|
||||
"static",
|
||||
"linux-docker",
|
||||
"linux-build-tools-failure",
|
||||
"linux-non-root",
|
||||
"fedora-installer",
|
||||
"macos-installer",
|
||||
"windows-installer",
|
||||
]
|
||||
.map((job) => ` - ${job}\n`)
|
||||
.join(""),
|
||||
);
|
||||
expect(workflow).toContain("repository: openclaw/openclaw.ai");
|
||||
expect(workflow).toContain("OPENCLAW_GH_TOKEN: ${{ secrets.OPENCLAW_GH_TOKEN }}");
|
||||
expect(workflow).toContain("OPENCLAW_GH_TOKEN is not configured");
|
||||
|
||||
Reference in New Issue
Block a user