diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 000000000..8e327cc9a --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,94 @@ +name: "CI" + +on: + pull_request: + push: + branches: + - '1.x' + +env: + SYMFONY_PHPUNIT_DISABLE_RESULT_CACHE: 1 + +jobs: + tests: + name: "PHP ${{ matrix.php-version }}" + + runs-on: 'ubuntu-latest' + + continue-on-error: true + + strategy: + matrix: + php-version: + - '7.2.5' + - '7.3' + - '7.4' + - '8.0' + + steps: + - name: "Checkout code" + uses: actions/checkout@v2.3.3 + + - name: "Install PHP with extensions" + uses: shivammathur/setup-php@2.7.0 + with: + coverage: "none" + php-version: ${{ matrix.php-version }} + ini-values: memory_limit=-1 + tools: composer:v2 + + - name: "Add PHPUnit matcher" + run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" + + - name: "Set composer cache directory" + id: composer-cache + run: echo "::set-output name=dir::$(composer config cache-files-dir)" + + - name: "Cache composer" + uses: actions/cache@v2.1.2 + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-${{ matrix.php-version }}-composer-${{ hashFiles('composer.json') }} + restore-keys: ${{ runner.os }}-${{ matrix.php-version }}-composer- + + - run: composer install + + - name: "Install PHPUnit" + run: vendor/bin/simple-phpunit install + + - name: "PHPUnit version" + run: vendor/bin/simple-phpunit --version + + - name: "Run tests" + run: vendor/bin/simple-phpunit + + integration-tests: + needs: + - 'tests' + + name: "Integration tests with PHP ${{ matrix.php-version }}" + + runs-on: 'ubuntu-20.04' + + continue-on-error: true + + strategy: + matrix: + php-version: + - '7.3' + + steps: + - name: "Checkout code" + uses: actions/checkout@v2.3.3 + + - name: "Install PHP with extensions" + uses: shivammathur/setup-php@2.7.0 + with: + coverage: "none" + extensions: "gd, pdo_sqlite" + php-version: ${{ matrix.php-version }} + ini-values: memory_limit=-1 + tools: composer:v2 + + - run: ./drupal_test.sh + shell: "bash" diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 8a57df8c3..000000000 --- a/.travis.yml +++ /dev/null @@ -1,35 +0,0 @@ -language: php - -dist: xenial - -cache: - directories: - - vendor - - $HOME/.composer/cache/files - -env: - global: - - SYMFONY_PHPUNIT_DISABLE_RESULT_CACHE=1 - -before_install: - - phpenv config-rm xdebug.ini || return 0 - - echo memory_limit = -1 >> ~/.phpenv/versions/$TRAVIS_PHP_VERSION/etc/conf.d/travis.ini - -install: - - travis_retry composer install - - export PHPUNIT=$(readlink -f ./vendor/bin/simple-phpunit) - - $PHPUNIT install - -script: - - $PHPUNIT - -jobs: - fast_finish: true - include: - - php: 7.2 - - php: 7.3 - - php: 7.4 - - php: nightly - - stage: integration tests - php: 7.3 - script: ./drupal_test.sh