name: End-to-End (Custom) on: workflow_dispatch: ~ workflow_call: ~ jobs: behat-no-js-unstable-symfony: runs-on: ubuntu-latest name: "Non-JS, PHP ${{ matrix.php }}, Symfony ${{ matrix.symfony }} [Unstable], MySQL ${{ matrix.mysql }}" timeout-minutes: 45 strategy: fail-fast: false matrix: php: [ "8.1" ] symfony: [ "^6.2" ] mysql: [ "8.0" ] env: APP_ENV: test_cached DATABASE_URL: "mysql://root:root@127.0.0.1/sylius?charset=utf8mb4&serverVersion=${{ matrix.mysql }}" steps: - uses: actions/checkout@v3 - name: Get Composer cache directory id: composer-cache run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT - name: "Restore dependencies" uses: actions/cache@v3 with: path: ${{ steps.composer-cache.outputs.dir }} key: "${{ github.run_id }}-${{ runner.os }}-${{ hashFiles('composer.json') }}-php-${{ matrix.php }}-symfony-${{ matrix.symfony }}-" restore-keys: "${{ github.run_id }}-${{ runner.os }}-${{ hashFiles('composer.json') }}-php-${{ matrix.php }}-symfony-${{ matrix.symfony }}-" - name: Change minimum-stability to beta run: composer config minimum-stability beta - name: Build application uses: jakubtobiasz/SyliusBuildTestAppAction@v2.0 with: build_type: "sylius" cache_key: "${{ github.run_id }}-${{ runner.os }}-${{ hashFiles('composer.json') }}-php-${{ matrix.php }}-symfony-${{ matrix.symfony }}-" cache_restore_key: "${{ github.run_id }}-${{ runner.os }}-${{ hashFiles('composer.json') }}-php-${{ matrix.php }}-symfony-${{ matrix.symfony }}-" e2e: "yes" database_version: ${{ matrix.mysql }} php_version: ${{ matrix.php }} symfony_version: ${{ matrix.symfony }} - name: Run PHPUnit run: vendor/bin/phpunit --colors=always - name: Run non-JS Behat run: vendor/bin/behat --colors --strict --no-interaction -vvv -f progress --tags="~@javascript&&~@todo&&~@cli&&~@no-postgres" || vendor/bin/behat --strict --no-interaction -vvv -f progress --tags="~@javascript&&~@todo&&~@cli&&~@no-postgres" --rerun - name: Upload logs uses: actions/upload-artifact@v3 if: failure() with: name: "Logs (non-JS, PHP ${{ matrix.php }}, Symfony ${{ matrix.symfony }}) [Unstable], MySQL ${{ matrix.mysql }})" path: | etc/build/ var/log if-no-files-found: ignore