Skip to content
name: Runtime testing PHP models
on:
push:
pull_request:
types: [opened, reopened, synchronize, ready_for_review]
paths:
- 'src/generators/php/**'
- 'test/runtime/runtime-php/**'
- 'test/runtime/**php**'
jobs:
runtime-php-test:
name: Runtime testing PHP ${{ matrix.php }} Models
if: "github.event.pull_request.draft == false &&!((github.actor == 'asyncapi-bot' && startsWith(github.event.pull_request.title, 'ci: update global workflows')) || (github.actor == 'asyncapi-bot' && startsWith(github.event.pull_request.title, 'chore(release):')) || (github.actor == 'allcontributors' && startsWith(github.event.pull_request.title, 'docs: add')))"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
php:
- 8.1
- 8.2
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Check package-lock version
uses: asyncapi/.github/.github/actions/get-node-version-from-package-lock@master
id: lockversion
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: "${{ steps.lockversion.outputs.version }}"
cache: 'npm'
cache-dependency-path: '**/package-lock.json'
- name: Build library
run: npm install && npm run build:prod
- name: Setup PHP
uses: shivammathur/[email protected]
with:
php-version: ${{ matrix.php }}
- name: Generate Models
run: npm run generate:runtime:php
- name: Install PHP Dependencies
uses: ramsey/composer-install@v2
with:
working-directory: test/runtime/runtime-php
- name: Run runtime tests
run: composer test
working-directory: test/runtime/runtime-php