Add workspace webhooks and drop the unused automation webhook node #1696
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: Tests | |
| on: | |
| push: | |
| branches: [main, develop] | |
| pull_request: | |
| branches: [main, develop] | |
| env: | |
| DB_CONNECTION: pgsql | |
| DB_DATABASE: trypost_test | |
| DB_USERNAME: postgres | |
| DB_PASSWORD: password | |
| BROADCAST_CONNECTION: "null" | |
| CACHE_STORE: array | |
| QUEUE_CONNECTION: sync | |
| SESSION_DRIVER: array | |
| jobs: | |
| tests: | |
| name: Tests (${{ matrix.name }}) | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - name: PostgreSQL | |
| connection: pgsql | |
| image: postgres:16 | |
| port: '5432' | |
| username: postgres | |
| health: '--health-cmd="pg_isready"' | |
| - name: MySQL | |
| connection: mysql | |
| image: mysql:8.4 | |
| port: '3306' | |
| username: root | |
| health: '--health-cmd="mysqladmin ping -h 127.0.0.1 -u root -ppassword"' | |
| env: | |
| DB_CONNECTION: ${{ matrix.connection }} | |
| DB_USERNAME: ${{ matrix.username }} | |
| services: | |
| database: | |
| image: ${{ matrix.image }} | |
| env: | |
| POSTGRES_USER: postgres | |
| POSTGRES_PASSWORD: password | |
| POSTGRES_DB: trypost_test | |
| MYSQL_ROOT_PASSWORD: password | |
| MYSQL_DATABASE: trypost_test | |
| ports: | |
| - ${{ matrix.port }}/tcp | |
| options: >- | |
| ${{ matrix.health }} | |
| --health-interval=5s | |
| --health-timeout=5s | |
| --health-retries=20 | |
| redis: | |
| image: redis:7 | |
| ports: | |
| - 6379/tcp | |
| options: >- | |
| --health-cmd="redis-cli ping" | |
| --health-interval=10s | |
| --health-timeout=5s | |
| --health-retries=3 | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v7 | |
| - name: Setup test environment | |
| uses: ./.github/actions/setup-laravel | |
| with: | |
| db-port: ${{ job.services.database.ports[matrix.port] }} | |
| redis-port: ${{ job.services.redis.ports['6379'] }} | |
| - name: Run backend tests | |
| env: | |
| DB_PORT: ${{ job.services.database.ports[matrix.port] }} | |
| REDIS_PORT: ${{ job.services.redis.ports['6379'] }} | |
| run: php artisan test --compact --parallel | |
| backend: | |
| name: backend | |
| runs-on: ubuntu-latest | |
| needs: [tests] | |
| if: always() | |
| steps: | |
| - name: Fail unless every engine passed | |
| run: '[ "${{ needs.tests.result }}" = "success" ]' | |
| e2e: | |
| runs-on: ubuntu-latest | |
| services: | |
| postgres: | |
| image: postgres:16 | |
| env: | |
| POSTGRES_USER: postgres | |
| POSTGRES_PASSWORD: password | |
| POSTGRES_DB: trypost_test | |
| ports: | |
| - 5432/tcp | |
| options: >- | |
| --health-cmd="pg_isready" | |
| --health-interval=10s | |
| --health-timeout=5s | |
| --health-retries=3 | |
| redis: | |
| image: redis:7 | |
| ports: | |
| - 6379/tcp | |
| options: >- | |
| --health-cmd="redis-cli ping" | |
| --health-interval=10s | |
| --health-timeout=5s | |
| --health-retries=3 | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v7 | |
| - name: Setup test environment | |
| uses: ./.github/actions/setup-laravel | |
| with: | |
| node: 'true' | |
| db-port: ${{ job.services.postgres.ports['5432'] }} | |
| redis-port: ${{ job.services.redis.ports['6379'] }} | |
| - name: Build assets | |
| run: npm run build | |
| - name: Install Playwright browsers | |
| run: npx playwright install --with-deps chromium | |
| - name: Run browser tests | |
| env: | |
| DB_PORT: ${{ job.services.postgres.ports['5432'] }} | |
| REDIS_PORT: ${{ job.services.redis.ports['6379'] }} | |
| run: php artisan test tests/Browser --compact | |
| - name: Upload Playwright artifacts | |
| if: failure() | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: playwright-artifacts | |
| path: tests/Browser/Screenshots | |
| if-no-files-found: ignore | |
| retention-days: 7 |