From e88a8b01089ea8c57ae60ae2acc3c500ac2b7305 Mon Sep 17 00:00:00 2001 From: mkorwel Date: Fri, 24 Apr 2026 20:48:11 +0000 Subject: [PATCH] ci: add Windows E2E job and restore bundle sharing --- .github/workflows/ci-bundling-trial.yml | 83 +++++++++++++++++++++---- 1 file changed, 71 insertions(+), 12 deletions(-) diff --git a/.github/workflows/ci-bundling-trial.yml b/.github/workflows/ci-bundling-trial.yml index 3ae08a2fc5..43bac82623 100644 --- a/.github/workflows/ci-bundling-trial.yml +++ b/.github/workflows/ci-bundling-trial.yml @@ -10,6 +10,31 @@ concurrency: cancel-in-progress: true jobs: + build_bundle: + name: 'Build Bundle' + runs-on: 'gemini-cli-ubuntu-16-core' + steps: + - name: 'Checkout' + uses: 'actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8' + + - name: 'Set up Node.js' + uses: 'actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020' + with: + node-version-file: '.nvmrc' + cache: 'npm' + + - name: 'Install dependencies' + run: 'npm ci' + + - name: 'Build Bundle' + run: 'npm run bundle' + + - name: 'Upload Bundle' + uses: 'actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02' + with: + name: 'gemini-bundle' + path: 'bundle/' + test_ui_messages: name: 'cli:ui/messages' runs-on: 'gemini-cli-ubuntu-16-core' @@ -275,11 +300,18 @@ jobs: test_e2e: name: 'e2e:linux' + needs: build_bundle runs-on: 'gemini-cli-ubuntu-16-core' steps: - name: 'Checkout' uses: 'actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8' + - name: 'Download Bundle' + uses: 'actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806' + with: + name: 'gemini-bundle' + path: 'bundle' + - name: 'Set up Node.js' uses: 'actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020' with: @@ -289,12 +321,6 @@ jobs: - name: 'Install dependencies' run: 'npm ci' - - name: 'Build project' - run: 'npm run build' - - - name: 'Build Bundle' - run: 'npm run bundle' - - name: 'Run Integration Tests' env: GEMINI_API_KEY: '${{ secrets.GEMINI_API_KEY }}' @@ -305,11 +331,18 @@ jobs: test_e2e_mac: name: 'e2e:mac' + needs: build_bundle runs-on: 'macos-latest' steps: - name: 'Checkout' uses: 'actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8' + - name: 'Download Bundle' + uses: 'actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806' + with: + name: 'gemini-bundle' + path: 'bundle' + - name: 'Set up Node.js' uses: 'actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020' with: @@ -319,12 +352,6 @@ jobs: - name: 'Install dependencies' run: 'npm ci' - - name: 'Build project' - run: 'npm run build' - - - name: 'Build Bundle' - run: 'npm run bundle' - - name: 'Fix rollup optional dependencies on macOS' run: 'npm cache clean --force' shell: 'bash' @@ -336,3 +363,35 @@ jobs: VERBOSE: 'true' run: 'npm run test:integration:sandbox:none' shell: 'bash' + + test_e2e_windows: + name: 'e2e:windows' + needs: build_bundle + runs-on: 'gemini-cli-windows-16-core' + steps: + - name: 'Checkout' + uses: 'actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8' + + - name: 'Download Bundle' + uses: 'actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806' + with: + name: 'gemini-bundle' + path: 'bundle' + + - name: 'Set up Node.js' + uses: 'actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020' + with: + node-version-file: '.nvmrc' + cache: 'npm' + + - name: 'Install targeted test dependencies' + run: 'npm install vitest node-pty --no-save' + shell: 'pwsh' + + - name: 'Run Integration Tests' + env: + GEMINI_API_KEY: '${{ secrets.GEMINI_API_KEY }}' + KEEP_OUTPUT: 'true' + VERBOSE: 'true' + run: 'npm run test:integration:sandbox:none' + shell: 'pwsh'