From 89cd3804f1739d6e371906f6765250125975c47a Mon Sep 17 00:00:00 2001 From: Dotta Date: Fri, 31 Jul 2026 18:09:32 +0000 Subject: [PATCH] ci(test): install lifecycle e2e matrix for PAP-14994 (macos + linux) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Temporary verification branch — proves the managed install/update/service lifecycle on real clean macOS (arm64+x64) and Ubuntu (x64+arm64) runners. Not intended to merge. Co-Authored-By: Claude Fable 5 --- .github/workflows/install-e2e.yml | 38 +++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 .github/workflows/install-e2e.yml diff --git a/.github/workflows/install-e2e.yml b/.github/workflows/install-e2e.yml new file mode 100644 index 00000000000..817dce7c413 --- /dev/null +++ b/.github/workflows/install-e2e.yml @@ -0,0 +1,38 @@ +name: Install lifecycle e2e (PAP-14994) + +on: + push: + branches: ["test/install-e2e-pap14994"] + workflow_dispatch: {} + +jobs: + e2e: + strategy: + fail-fast: false + matrix: + include: + - os: macos-14 # Apple Silicon + - os: macos-13 # Intel + - os: ubuntu-24.04 # x86_64 + - os: ubuntu-24.04-arm # arm64 + runs-on: ${{ matrix.os }} + timeout-minutes: 120 + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: 22 + - name: Run install lifecycle e2e + env: + E2E_REPO: paperclipai/paperclip + E2E_REF: feat/managed-install-integration + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: bash scripts/e2e-install-lifecycle.sh + - name: Installer refuses piped privileged bootstrap (Linux) + if: runner.os == 'Linux' + run: | + if cat scripts/install.sh | sudo bash -s -- --yes; then + echo "::error::install.sh executed as piped root — guard failed" + exit 1 + fi + echo "guard held: piped privileged bootstrap refused"