chore(deps-dev): Bump @types/vscode from 1.79.0 to 1.105.0 in /tools/serverpod_vscode_extension #729
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: Serverpod CI | |
| on: | |
| workflow_dispatch: | |
| push: | |
| branches: | |
| - main | |
| - dev | |
| - tests | |
| - stable-* | |
| pull_request: | |
| branches: | |
| - main | |
| - dev | |
| - stable-* | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.ref }} | |
| cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} | |
| jobs: | |
| dart_format: | |
| name: dart format | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| dart-version: ['3.6.0'] # last version before formatter changes | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dart-lang/[email protected] | |
| with: | |
| sdk: ${{ matrix.dart-version }} | |
| - name: Verify formatting | |
| run: dart format --output=none --set-exit-if-changed . | |
| dart_analyze: | |
| name: dart analyze | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| flutter-version: ['3.29.0'] | |
| os: [windows-latest, ubuntu-latest] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Install melos | |
| run: dart pub global activate melos | |
| - name: Bootstrap | |
| run: melos bootstrap | |
| - name: Run lint | |
| run: melos lint_strict | |
| dart_analyze_latest: | |
| name: dart analyze latest | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| flutter-version: ['3.35.2'] | |
| os: [windows-latest, ubuntu-latest] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Install melos | |
| run: dart pub global activate melos | |
| - name: Bootstrap | |
| run: melos bootstrap | |
| - name: Run lint | |
| run: melos lint | |
| dart_analyze_downgrade: | |
| name: dart analyze downgrade | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| os: [windows-latest, ubuntu-latest] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Install melos | |
| run: dart pub global activate melos | |
| - name: Bootstrap | |
| run: melos bootstrap | |
| - name: Downgrade dependencies | |
| run: melos downgrade | |
| - name: Run lint | |
| run: melos lint_loose | |
| serverpod_generate: | |
| name: serverpod generate | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Install Melos | |
| run: dart pub global activate melos | |
| - name: Install dependencies | |
| run: melos bootstrap | |
| - name: Run serverpod generate | |
| run: bash util/run_tests_serverpod_generate | |
| update_pubspecs: | |
| name: update pubspecs | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Run serverpod update pubspecs | |
| run: bash util/run_tests_update_pubspecs | |
| unit_io_tests: | |
| name: Unit tests IO | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| os: [windows-latest, ubuntu-latest] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Run unit tests | |
| run: bash util/run_tests_unit | |
| unit_web_tests: | |
| name: Unit tests Web | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| os: [ubuntu-latest, windows-latest] | |
| include: | |
| - compiler: dart2js | |
| - os: ubuntu-latest | |
| platform: chrome | |
| - os: windows-latest | |
| platform: edge | |
| - flutter-version: '3.35.2' | |
| platform: chrome | |
| compiler: dart2wasm | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - uses: browser-actions/setup-chrome@v1 | |
| - name: Run unit tests | |
| run: >- | |
| dart test | |
| --platform=${{ matrix.platform }} | |
| --compiler=${{ matrix.compiler }} | |
| --reporter=failures-only | |
| working-directory: packages/serverpod_client | |
| flutter_unit_tests: | |
| name: Flutter unit tests | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| os: [windows-latest, ubuntu-latest] | |
| path: ['packages/serverpod_flutter'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Run unit tests | |
| run: flutter test | |
| working-directory: ${{ matrix.path }} | |
| e2e_io_tests: | |
| name: Serverpod E2E IO tests | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Run e2e tests | |
| run: util/run_tests_e2e | |
| e2e_web_tests: | |
| name: Serverpod E2E web tests | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Run e2e tests | |
| run: util/run_tests_e2e firefox | |
| integration_tests: | |
| name: Serverpod integration tests | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| path: ['packages/serverpod_shared'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Run integration tests | |
| run: dart test test_integration --reporter=failures-only | |
| working-directory: ${{ matrix.path }} | |
| module_integration_tests: | |
| name: Module integration tests in ${{ matrix.module }} with Flutter ${{ matrix.flutter-version }} | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| module: | |
| [ | |
| 'tests/serverpod_test_module/serverpod_test_module_server', | |
| 'tests/serverpod_test_nonvector/serverpod_test_nonvector_server', | |
| 'tests/serverpod_new_auth_test/serverpod_new_auth_test_server', | |
| 'modules/new_serverpod_auth/serverpod_auth_bridge/serverpod_auth_bridge_server', | |
| 'modules/new_serverpod_auth/serverpod_auth_idp/serverpod_auth_idp_server', | |
| 'modules/new_serverpod_auth/serverpod_auth_core/serverpod_auth_core_server', | |
| 'modules/new_serverpod_auth/serverpod_auth_migration/serverpod_auth_migration_server', | |
| 'modules/serverpod_auth/serverpod_auth_server', | |
| ] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Start containers | |
| run: docker compose up --build -V -d | |
| working-directory: ${{ matrix.module }} | |
| - name: Wait for services to be ready | |
| run: | | |
| ./wait-for-it.sh localhost:9090 -t 60 -- echo "### Postgres is UP at :9090" | |
| ./wait-for-it.sh localhost:9091 -t 60 -- echo "### Redis is UP at :9091" | |
| working-directory: tests/docker/tests_integration | |
| - name: Run integration tests (concurrently) | |
| run: dart test -t integration -x concurrency_one --reporter=failures-only || [ $? -eq 79 ] | |
| working-directory: ${{ matrix.module }} | |
| - name: Run integration tests (sequentially) | |
| if: always() | |
| # Exit code `79` means that no tests were found for the tags | |
| run: dart test -t integration -t concurrency_one --concurrency=1 --reporter=failures-only || [ $? -eq 79 ] | |
| working-directory: ${{ matrix.module }} | |
| - name: Stop containers | |
| if: always() | |
| run: docker compose down -v | |
| working-directory: ${{ matrix.module }} | |
| module_e2e_tests: | |
| name: Module E2E tests in ${{ matrix.module.client }} with Flutter ${{ matrix.flutter-version }} | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| module: | |
| - server: tests/serverpod_new_auth_test/serverpod_new_auth_test_server | |
| client: tests/serverpod_new_auth_test/serverpod_new_auth_test_flutter | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Start containers | |
| run: docker compose up --build -V -d | |
| working-directory: ${{ matrix.module.server }} | |
| - name: Wait for services to be ready | |
| run: | | |
| ./wait-for-it.sh localhost:9090 -t 60 -- echo "### Postgres is UP at :9090" | |
| ./wait-for-it.sh localhost:9091 -t 60 -- echo "### Redis is UP at :9091" | |
| working-directory: tests/docker/tests_integration | |
| - name: Install dependencies | |
| run: dart pub get | |
| working-directory: ${{ matrix.module.server }} | |
| - name: Start server | |
| run: dart run bin/main.dart --apply-migrations & | |
| working-directory: ${{ matrix.module.server }} | |
| - name: Wait for services to be ready | |
| run: | | |
| ./wait-for-it.sh localhost:8080 -t 60 -- echo "### Serverpod backend is UP at :8080" | |
| working-directory: tests/docker/tests_integration | |
| - name: Run E2E tests (concurrently) | |
| run: flutter test --reporter=failures-only | |
| working-directory: ${{ matrix.module.client }} | |
| - name: Stop containers | |
| if: always() | |
| run: docker compose down -v | |
| working-directory: ${{ matrix.module.server }} | |
| integration_test_server: | |
| name: Serverpod integration tests (server) | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Run integration tests | |
| run: util/run_tests_integration | |
| integration_test_server_concurrent: | |
| name: Serverpod concurrent integration tests (server) | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Run integration tests | |
| run: util/run_tests_integration_concurrently | |
| bootstrap_tests: | |
| name: Bootstrap tests | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| os: [windows-latest, ubuntu-latest] | |
| path: ['tests/bootstrap_project'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Setup docker (missing on MacOS) | |
| if: runner.os == 'macos' | |
| run: | | |
| brew install docker docker-compose | |
| # Link the Docker Compose v2 plugin so it's understood by the docker CLI | |
| mkdir -p ~/.docker/cli-plugins | |
| ln -sfn /usr/local/opt/docker-compose/bin/docker-compose ~/.docker/cli-plugins/docker-compose | |
| colima start | |
| - name: Run unit tests | |
| run: dart test --concurrency=1 --reporter=failures-only | |
| working-directory: ${{ matrix.path }} | |
| migration_e2e_tests: | |
| name: Migration e2e tests | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Run e2e migration tests | |
| run: util/run_tests_migrations_e2e | |
| cli_e2e_tests: | |
| name: CLI e2e tests | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| flutter-version: ['3.29.0', '3.35.2'] | |
| os: [ubuntu-latest] | |
| path: ['tests/serverpod_cli_e2e_test'] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ matrix.flutter-version }} | |
| cache: true | |
| - name: Setup docker (missing on MacOS) | |
| if: runner.os == 'macos' | |
| run: | | |
| brew install docker docker-compose | |
| # Link the Docker Compose v2 plugin so it's understood by the docker CLI | |
| mkdir -p ~/.docker/cli-plugins | |
| ln -sfn /usr/local/opt/docker-compose/bin/docker-compose ~/.docker/cli-plugins/docker-compose | |
| colima start | |
| - name: Run unit tests | |
| run: dart test --concurrency=1 --reporter=failures-only | |
| working-directory: ${{ matrix.path }} | |
| integration_test_flutter: | |
| name: Serverpod integration tests (flutter) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Run integration tests in Docker | |
| run: util/run_tests_flutter_integration | |
| version_change_test: | |
| name: Version change test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: '3.29.0' | |
| cache: true | |
| - name: Install melos | |
| run: dart pub global activate melos | |
| - name: Run version change test | |
| run: util/run_tests_version_change | |
| publish_check: | |
| name: Publish check | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: '3.29.0' | |
| cache: true | |
| - name: Install melos | |
| run: dart pub global activate melos | |
| - name: Run publish check | |
| continue-on-error: true | |
| id: run_publish | |
| shell: bash | |
| run: melos publish --dry-run --yes 2>&1 | tee publish_output.txt | |
| - name: Highlight publish errors | |
| shell: bash | |
| run: | | |
| if [ -f publish_output.txt ]; then | |
| # Print lines that begin with "ERROR: " to make them stand out in logs | |
| # Because the publish --dry-run does not support ignoring warnings, | |
| # we fail the step if any ERROR lines are found. | |
| if grep -nE '^ERROR: ' publish_output.txt >/dev/null; then | |
| echo "Packages with errors (lines from melos output):" | |
| grep -nE '^ERROR: ' publish_output.txt || true | |
| exit 1 | |
| else | |
| echo "No ERROR lines found in melos output." | |
| fi | |
| else | |
| echo "publish_output.txt not found." | |
| exit 1 | |
| fi |