refactor: Update all packages to Angular 20 #546
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: PR check | |
| on: | |
| push: | |
| branches: | |
| - master | |
| pull_request: | |
| jobs: | |
| build-packages: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - uses: actions/setup-node@v3 | |
| with: | |
| node-version: 20.19 | |
| cache: 'npm' | |
| - run: npm ci | |
| - run: npm run build:packages | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: built-packages | |
| path: 'dist/' | |
| retention-days: 1 | |
| # Remove once Angular drop support for RxJS@6 | |
| build-packages-rxjs-7: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - uses: actions/setup-node@v3 | |
| with: | |
| node-version: 20.19 | |
| cache: 'npm' | |
| - run: | | |
| npm ci | |
| npm install rxjs@7.4.0 | |
| npm run build:packages | |
| build-docs: | |
| needs: build-packages | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - uses: actions/setup-node@v3 | |
| with: | |
| node-version: 20.19 | |
| - run: npm ci | |
| - run: npm run docs:build | |
| build-playground: | |
| needs: build-packages | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - uses: actions/setup-node@v3 | |
| with: | |
| node-version: 20.19 | |
| - run: npm ci | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: built-packages | |
| path: dist | |
| - run: npm run build playground -- --configuration=production-wp | |
| # lint: | |
| # runs-on: ubuntu-latest | |
| # steps: | |
| # - uses: actions/checkout@v2 | |
| # - uses: actions/setup-node@v2 | |
| # with: | |
| # node-version: '16' | |
| # - run: npm ci | |
| # - run: npm run ci:lint | |
| # e2e: | |
| # needs: build-packages | |
| # runs-on: ubuntu-latest | |
| # steps: | |
| # - uses: actions/checkout@v2 | |
| # - uses: actions/setup-node@v2 | |
| # with: | |
| # node-version: '16' | |
| # - run: npm ci | |
| # - uses: actions/download-artifact@v4 | |
| # with: | |
| # name: built-packages | |
| # path: dist | |
| # - name: BrowserStack Setup | |
| # uses: 'browserstack/github-actions@master' | |
| # with: | |
| # username: ${{ env.BSU }} | |
| # access-key: ${{ env.BSK }} | |
| # - name: Start BrowserStackLocal Tunnel | |
| # uses: browserstack/github-actions/setup-local@master | |
| # with: | |
| # local-testing: start | |
| # - name: Test | |
| # run: npm run ng -- e2e playground-e2e --configuration=production-wp | |
| # - name: Stop BrowserStackLocal Tunnel | |
| # uses: browserstack/github-actions/setup-local@master | |
| # with: | |
| # local-testing: stop | |
| unit-test: | |
| needs: build-packages | |
| runs-on: ubuntu-latest | |
| env: | |
| BSU: debac1 | |
| BSK: AhrdZMi5gFDy3CQQfJHs | |
| BROWSERSTACK_USERNAME: debac1 | |
| BROWSERSTACK_ACCESS_KEY: AhrdZMi5gFDy3CQQfJHs | |
| FORCE_LOCAL_TESTING: true # Temporarily force local testing due to BrowserStack issues | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - uses: actions/setup-node@v3 | |
| with: | |
| node-version: 20.19 | |
| - run: npm ci | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: built-packages | |
| path: dist | |
| - name: BrowserStack Setup | |
| uses: 'browserstack/github-actions/setup-env@4478e16186f38e5be07721931642e65a028713c3' | |
| with: | |
| username: ${{ env.BSU }} | |
| access-key: ${{ env.BSK }} | |
| - name: Start BrowserStackLocal Tunnel | |
| uses: browserstack/github-actions/setup-local@4478e16186f38e5be07721931642e65a028713c3 | |
| with: | |
| local-testing: start | |
| local-identifier: random | |
| - name: Verify BrowserStack Connection | |
| run: | | |
| echo "Checking BrowserStack environment variables..." | |
| echo "BROWSERSTACK_USERNAME is set: $([[ -n "$BROWSERSTACK_USERNAME" ]] && echo "Yes" || echo "No")" | |
| echo "BROWSERSTACK_ACCESS_KEY is set: $([[ -n "$BROWSERSTACK_ACCESS_KEY" ]] && echo "Yes" || echo "No")" | |
| echo "BSU is set: $([[ -n "$BSU" ]] && echo "Yes" || echo "No")" | |
| echo "BSK is set: $([[ -n "$BSK" ]] && echo "Yes" || echo "No")" | |
| - name: Test packages | |
| run: npm run test playground -- -c=production-wp --watch=false | |
| - name: Test schematics | |
| run: npm run test:schematics | |
| - name: Stop BrowserStackLocal Tunnel | |
| uses: browserstack/github-actions/setup-local@4478e16186f38e5be07721931642e65a028713c3 | |
| with: | |
| local-testing: stop | |
| - name: Upload coverage to codecov | |
| uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 | |
| packages-smoke: | |
| needs: build-packages | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - uses: actions/setup-node@v3 | |
| with: | |
| node-version: 20.19 | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: built-packages | |
| path: packages-smoke/.lib/ | |
| - run: npm ci | |
| working-directory: packages-smoke | |
| - name: Build | |
| run: npm run build -- --configuration=production | |
| working-directory: packages-smoke | |
| - name: E2E | |
| env: | |
| CYPRESS_CACHE_FOLDER: ~/.cache/Cypress | |
| ELECTRON_EXTRA_LAUNCH_ARGS: --disable-gpu --disable-software-rasterizer --disable-background-timer-throttling --disable-renderer-backgrounding --disable-backgrounding-occluded-windows | |
| run: | | |
| echo "Running e2e tests with proper timeout handling..." | |
| timeout 600 npm run e2e:ci || { | |
| echo "E2E tests timed out or failed" | |
| exit 1 | |
| } | |
| working-directory: packages-smoke | |
| - name: SSR | |
| run: | | |
| npm run build:ssr | |
| npm run serve:ssr | |
| working-directory: packages-smoke |