Upgrade dependencies #3656
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: Integration | |
| on: | |
| pull_request: | |
| branches: ["main"] | |
| paths-ignore: | |
| - "packages/http-client-csharp/**" | |
| - "packages/http-client-java/**" | |
| - "packages/http-client-python/**" | |
| - "website/**" | |
| - "docs/**" | |
| # Allow manual triggering | |
| workflow_dispatch: | |
| # This check is optional by default | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| azure-integration-check: | |
| name: Azure/typespec-azure | |
| runs-on: ubuntu-latest | |
| # Only run if not from dependabot, publish, backmerge, or revert branches | |
| if: | | |
| !startsWith(github.head_ref, 'dependabot/') && | |
| !startsWith(github.head_ref, 'publish/') && | |
| !startsWith(github.head_ref, 'backmerge/') && | |
| !startsWith(github.head_ref, 'revert-') | |
| steps: | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: lts/* | |
| - name: Checkout Azure/typespec-azure repo | |
| uses: actions/checkout@v4 | |
| with: | |
| repository: Azure/typespec-azure | |
| submodules: true | |
| - name: Install pnpm | |
| uses: pnpm/action-setup@v3 | |
| - name: Update core submodule to PR commit | |
| run: | | |
| # Configure git to use the PR's repository as a remote for the submodule | |
| cd core | |
| git remote add pr https://github.com/${{ github.repository }}.git | |
| git fetch pr ${{ github.event.pull_request.head.sha }} | |
| # Update the submodule to point to the PR commit | |
| git checkout ${{ github.event.pull_request.head.sha }} | |
| - name: Install | |
| run: pnpm install --no-frozen-lockfile | |
| - name: Install Playwright | |
| run: pnpm exec playwright install | |
| - name: Build | |
| run: pnpm build | |
| - name: Test | |
| run: pnpm test | |
| - name: E2E Test | |
| run: pnpm test:e2e | |
| azure-rest-api-specs: | |
| name: Azure REST API Specs | |
| runs-on: ubuntu-latest | |
| if: contains(github.event.pull_request.labels.*.name, 'int:azure-specs') || github.event_name == 'workflow_dispatch' | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| fetch-depth: 0 | |
| ref: ${{ github.event.pull_request.head.sha || github.sha }} | |
| - name: Setup Node.js and pnpm | |
| uses: ./.github/actions/setup | |
| - name: Install dependencies | |
| run: pnpm install | |
| - name: Build and pack TypeSpec Azure packages | |
| run: | | |
| pnpm --filter "!@typespec/playground-website" --filter "!@typespec/website" -r build | |
| pnpm chronus pack --pack-destination ./tgz-packages --exclude standalone | |
| echo "Created tgz packages:" | |
| ls -la ./tgz-packages/ | |
| cd packages/tsp-integration | |
| npm link | |
| - name: Checkout | |
| run: tsp-integration azure-specs --stage checkout | |
| - name: Patch package.json | |
| run: tsp-integration azure-specs --stage patch --stage install --tgz-dir ./tgz-packages | |
| - name: Run TypeSpec validation in azure-rest-api-specs | |
| run: tsp-integration azure-specs --stage validate | |
| - name: Check for git changes | |
| if: success() || failure() # Still run this step even if validation fails to ensure as much information as possible | |
| run: tsp-integration azure-specs --stage validate:clean |