Skip to content

Merge @rudycelekli's content fixes, batch 3 (20 PRs, #1033–#1052) (#1… #306

Merge @rudycelekli's content fixes, batch 3 (20 PRs, #1033–#1052) (#1…

Merge @rudycelekli's content fixes, batch 3 (20 PRs, #1033–#1052) (#1… #306

Workflow file for this run

name: Test Installer
# No path filter on purpose: the installer's contract can break from the other
# side too — a renamed division, a file that loses its frontmatter, a change to
# lib.sh — so these run on every PR.
on:
pull_request:
push:
branches: [main]
jobs:
test-install:
name: install.sh behavior (${{ matrix.os }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
# macOS ships bash 3.2, Linux ships bash 5 — the scripts must pass on both.
os: [ubuntu-latest, macos-latest]
steps:
- uses: actions/checkout@v4
- name: Shell syntax
run: |
for f in scripts/*.sh; do bash -n "$f"; done
- name: Run installer tests
run: |
chmod +x scripts/test-install.sh scripts/install.sh
./scripts/test-install.sh
bash scripts/test-install-openclaw-registration.sh
bash scripts/test-install-link-ownership.sh
bash scripts/test-install-parallel-logs.sh