name: PHP Integration Tests on: pull_request: workflow_dispatch: jobs: test: name: Integration Tests runs-on: ubuntu-latest services: mongo: image: mongo:7 options: >- --health-cmd "mongosh --quiet --eval \"db.adminCommand('ping')\"" --health-interval 5s --health-timeout 5s --health-retries 12 steps: - name: Retrieve Server Install Action uses: actions/checkout@v6.0.2 with: repository: Nodarx/action-server-install ref: main path: action-server-install github-server-url: https://git.ktrix.dev - name: Install server uses: ./action-server-install with: install-php: 'true' php-version: '8.5' server-path: './server' database-uri: 'mongodb://mongo:27017/?tls=false' database-name: 'ktrix_ci' app-environment: 'test' - name: Checkout module under test uses: actions/checkout@v6.0.2 with: repository: ${{ github.repository }} ref: ${{ github.event.pull_request.head.sha || github.sha }} path: server/modules/mail_manager github-server-url: https://git.ktrix.dev - name: Install module dependencies run: composer install --prefer-dist --no-progress working-directory: server/modules/mail_manager - name: Install and enable module working-directory: server run: | php bin/console module:install mail_manager php bin/console module:enable mail_manager - name: Run integration tests working-directory: server/modules/mail_manager run: composer test:integration