name: Production Build Smoke Test on: push: branches: - master paths-ignore: - '**/*.md' - 'doc/**' - 'logo/**' workflow_dispatch: pull_request: branches: - master paths-ignore: - '**/*.md' - 'doc/**' - 'logo/**' jobs: build-and-test-playwright: name: Smoke Test for Browser Example Production Build on ubuntu-22.04 with Node.js 22.x runs-on: ubuntu-22.04 timeout-minutes: 60 steps: - name: Checkout uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0 - name: Use Node.js "22.x" uses: actions/setup-node@1a4442cacd436585916779262731d5b162bc6ec7 # v3.8.2 with: node-version: "22.x" registry-url: "https://registry.npmjs.org" - name: Use Python 3.13 uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: "3.13" - name: Build Browser Example Application for Production shell: bash run: | npm ci cd examples/browser && npm run build:production env: NODE_OPTIONS: --max_old_space_size=4096 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # https://github.com/microsoft/vscode-ripgrep/issues/9 - name: Build Playwright shell: bash run: | cd examples/playwright && npm run build - name: Run Smoke Test (examples/playwright/src/tests/theia-app) shell: bash run: npm run test:playwright -- theia-app