feat(os): add elizaOS live update architecture #17
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: ElizaOS OS release validation | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| paths: | |
| - ".github/workflows/elizaos-os-release.yml" | |
| - "packages/os/**" | |
| - "packages/os-homepage/**" | |
| - "packages/os-usb-installer/**" | |
| - "packages/aosp-flasher/**" | |
| jobs: | |
| validate-os-release: | |
| name: Validate OS release surfaces | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Set up Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: "1.3.13" | |
| - name: Install dependencies | |
| run: bun install | |
| - name: Validate OS release manifest | |
| run: | | |
| node --check packages/os/scripts/*.mjs | |
| node packages/os/scripts/validate-release-manifest.mjs \ | |
| --manifest packages/os/release/beta-2026-05-16/manifest.json | |
| node --test packages/os/scripts/__tests__/os-release-scripts.test.mjs | |
| node packages/os/scripts/collect-release-evidence.mjs \ | |
| --manifest packages/os/release/beta-2026-05-16/manifest.json \ | |
| --output packages/os/release/beta-2026-05-16/evidence/ci-evidence.json | |
| - name: Validate USB installer | |
| run: | | |
| bun run --cwd packages/os-usb-installer lint | |
| bun run --cwd packages/os-usb-installer typecheck | |
| bun run --cwd packages/os-usb-installer test | |
| bun run --cwd packages/os-usb-installer build | |
| - name: Validate Android installer | |
| run: | | |
| packages/os/android/installer/tests/run-tests.sh | |
| node packages/os/android/installer/scripts/validate-release-manifest.mjs \ | |
| packages/os/android/installer/manifests/android-release-manifest.example.json | |
| - name: Validate AOSP flasher | |
| continue-on-error: true | |
| run: | | |
| bun run --cwd packages/aosp-flasher typecheck || echo "WARN: aosp-flasher not yet present" | |
| bun run --cwd packages/aosp-flasher build || echo "WARN: aosp-flasher build skipped" | |
| - name: Validate Linux live USB metadata | |
| run: | | |
| cd packages/os/linux/variants/milady-tails | |
| ELIZAOS_STATIC_SOURCE_ONLY=1 ./scripts/static-smoke.sh | |
| - name: Validate OS homepage | |
| run: | | |
| bun run --cwd packages/os-homepage lint:check | |
| bun run --cwd packages/os-homepage typecheck | |
| bun run --cwd packages/os-homepage build | |
| (cd packages/os-homepage && ../../node_modules/.bin/playwright install --with-deps chromium) | |
| bun run --cwd packages/os-homepage test:e2e | |
| - name: Capture homepage contact sheet | |
| run: | | |
| bun --bun --cwd packages/os-homepage vite preview --host 127.0.0.1 --port 4455 & | |
| echo $! > /tmp/os-homepage-preview.pid | |
| for i in {1..60}; do | |
| if curl -fsS http://127.0.0.1:4455 >/dev/null; then | |
| break | |
| fi | |
| sleep 1 | |
| done | |
| curl -fsS http://127.0.0.1:4455 >/dev/null | |
| bun run --cwd packages/os-homepage screenshots | |
| kill "$(cat /tmp/os-homepage-preview.pid)" | |
| - name: Upload release evidence | |
| uses: actions/upload-artifact@v4 | |
| if: always() | |
| with: | |
| name: elizaos-os-release-validation | |
| path: | | |
| packages/os/release/beta-2026-05-16/evidence/** | |
| packages/os/linux/vm/output/ci-bundle-metadata/** | |
| packages/os-homepage/artifacts/screenshots/** | |
| packages/os-homepage/test-results/** |