name: Test Linux on: pull_request: push: branches: - main - master jobs: integration-smoke: runs-on: ubuntu-latest defaults: run: working-directory: ods steps: - name: Checkout uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 - name: Docs Link Checks run: bash tests/test-doc-links.sh - name: Integration Smoke run: bash tests/integration-test.sh - name: Extension Audit run: | python3 scripts/audit-extensions.py --project-dir . bash tests/test-extension-audit.sh - name: Extension Runtime Check Tests run: bash tests/test-extension-runtime-check.sh - name: Phase C P1 Static Checks run: bash tests/test-phase-c-p1.sh - name: Manifest Compatibility Checks run: | bash scripts/check-compatibility.sh bash scripts/check-release-claims.sh - name: BATS Unit Tests run: bash tests/run-bats.sh - name: Tier Map Unit Tests run: bash tests/test-tier-map.sh - name: Service Registry Tests run: bash tests/test-service-registry.sh - name: Validate Manifests Tests run: bash tests/test-validate-manifests.sh - name: Health Check Tests run: bash tests/test-health-check.sh - name: n8n Cookie Policy Tests run: bash tests/test-n8n-cookie-policy.sh - name: ODS Doctor Tests run: bash tests/test-ods-doctor.sh - name: Windows Report Command Tests run: bash tests/test-windows-report-command.sh - name: Compose Failure Report Tests run: bash tests/test-compose-failure-report.sh - name: Uninstall Compose Flags Tests run: bash tests/test-uninstall-compose-flags.sh - name: Windows Compose Failure Report Tests run: bash tests/test-windows-compose-failure-report.sh - name: Windows Missing Service Hint Tests run: bash tests/test-windows-missing-service-hints.sh - name: Install Readiness Summary Tests run: bash tests/test-install-readiness-summary.sh - name: Windows Install Readiness Summary Tests run: bash tests/test-windows-readiness-summary.sh - name: Windows Service Plan Tests run: bash tests/test-windows-service-plan.sh - name: Windows Installer Flag Tests run: bash tests/test-windows-installer-flags.sh - name: Validate Env Tests run: bash tests/test-validate-env.sh - name: Validate Simulation Summary Tests run: bash tests/test-validate-sim-summary.sh - name: Golden Path Contract Tests run: bash tests/test-golden-paths.sh - name: Generated Config Contract Tests run: bash tests/test-generated-config-contracts.sh - name: Dependency Pin Contract Tests run: python3 tests/test-dependency-pins.py - name: Runtime Config Renderer Tests run: python3 tests/test-render-runtime-configs.py - name: Runtime Config Wiring Tests run: python3 tests/test-runtime-config-wiring.py - name: Perplexica Entrypoint Contract Tests run: python3 tests/test-perplexica-entrypoint.py - name: CPU-Only Path Tests run: bash tests/test-cpu-only-path.sh - name: Installer Contract Checks run: | bash tests/contracts/test-installer-contracts.sh bash tests/contracts/test-preflight-fixtures.sh python3 tests/contracts/test-network-exposure-contracts.py - name: Linux install preflight tests run: bash tests/test-linux-install-preflight.sh - name: Installer Simulation Harness run: | bash scripts/simulate-installers.sh test -f artifacts/installer-sim/summary.json test -f artifacts/installer-sim/SUMMARY.md python3 scripts/validate-sim-summary.py artifacts/installer-sim/summary.json - name: Update Rollback Contract run: bash tests/test-update-rollback-contract.sh - name: Support Bundle Evidence Tests run: bash tests/test-support-bundle.sh - name: Upload Installer Simulation Artifacts uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 with: name: installer-sim path: | ods/artifacts/installer-sim/summary.json ods/artifacts/installer-sim/SUMMARY.md ods/artifacts/installer-sim/golden-paths.json ods/artifacts/installer-sim/linux-dryrun.log ods/artifacts/installer-sim/macos-installer.log ods/artifacts/installer-sim/windows-preflight-sim.json ods/artifacts/installer-sim/macos-preflight.json ods/artifacts/installer-sim/macos-doctor.json ods/artifacts/installer-sim/doctor.json ods/artifacts/update-rollback/evidence.json