| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- # Testing the code base against the MeiliSearch pre-releases
- name: Pre-Release Tests
- # Will only run for PRs and pushes to bump-meilisearch-v*
- on:
- push:
- branches: bump-meilisearch-v*
- pull_request:
- branches: bump-meilisearch-v*
- jobs:
- tests:
- runs-on: ubuntu-latest
- strategy:
- matrix:
- php-versions: ['7.2', '7.3', '7.4', '8.0']
- name: integration-tests-against-rc (PHP ${{ matrix.php-versions }})
- steps:
- - uses: actions/checkout@v1
- - name: Install PHP
- uses: shivammathur/setup-php@v2
- with:
- php-version: ${{ matrix.php-versions }}
- - name: Validate composer.json and composer.lock
- run: composer validate
- - name: Install dependencies
- run: |
- composer remove --dev friendsofphp/php-cs-fixer --no-update --no-interaction
- composer install --prefer-dist --no-progress --no-suggest
- - name: Get the latest MeiliSearch RC
- run: echo "MEILISEARCH_VERSION=$(curl https://raw.githubusercontent.com/meilisearch/integration-guides/main/scripts/get-latest-meilisearch-rc.sh | bash)" >> $GITHUB_ENV
- - name: MeiliSearch (${{ env.MEILISEARCH_VERSION }}) setup with Docker
- run: docker run -d -p 7700:7700 getmeili/meilisearch:${{ env.MEILISEARCH_VERSION }} ./meilisearch --master-key=masterKey --no-analytics=true
- - name: Run test suite - default HTTP client (Guzzle 7)
- run: |
- sh scripts/tests.sh
- composer remove --dev guzzlehttp/guzzle http-interop/http-factory-guzzle
- - name: Run test suite - php-http/guzzle6-adapter
- # Don't run on PHP 8
- # Guzzle 6 is not compatible with PHP 8.0
- if: ${{ !startsWith(matrix.php-versions, '8.') }}
- run: |
- composer require --dev php-http/guzzle6-adapter http-interop/http-factory-guzzle
- sh scripts/tests.sh
- composer remove --dev php-http/guzzle6-adapter http-interop/http-factory-guzzle
- - name: Run test suite - symfony/http-client
- run: |
- composer require --dev symfony/http-client nyholm/psr7
- sh scripts/tests.sh
- composer remove --dev symfony/http-client nyholm/psr7
- - name: Run test suite - php-http/curl-client
- # Don't run on PHP 8
- # php-http/curl-client is currently not compatible with PHP 8.0
- if: ${{ !startsWith(matrix.php-versions, '8.') }}
- run: |
- composer require --dev php-http/curl-client nyholm/psr7
- sh scripts/tests.sh
- composer remove --dev php-http/curl-client nyholm/psr7
- - name: Run test suite - kriswallsmith/buzz
- # Don't run on PHP 8
- # kriswallsmith/buzz is currently not compatible with PHP 8.0
- if: ${{ !startsWith(matrix.php-versions, '8.') }}
- run: |
- composer require --dev kriswallsmith/buzz nyholm/psr7
- sh scripts/tests.sh
- composer remove --dev kriswallsmith/buzz nyholm/psr7
|