From eaa544855d42a42990ca386925d7f48ca14c6ce4 Mon Sep 17 00:00:00 2001 From: Andrew Nicols Date: Wed, 19 Jun 2024 23:22:42 +0800 Subject: [PATCH] Convert Travis configuration to GitHub Workflow --- .github/workflows/ci.yml | 64 ++++++++++++++++++++++++++++++++++++++++ .travis.yml | 30 ------------------- 2 files changed, 64 insertions(+), 30 deletions(-) create mode 100644 .github/workflows/ci.yml delete mode 100644 .travis.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..cef7004 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,64 @@ +name: CI + +on: + push: + branches: ['*'] + pull_request: + schedule: + - cron: '0 0 * * *' + +jobs: + + tests: + name: Tests - PHP ${{ matrix.php }} ${{ matrix.dependency-version }} + runs-on: ubuntu-latest + timeout-minutes: 15 + strategy: + fail-fast: false + matrix: + php: [ '7.3', '7.4', '8.0', '8.1', '8.2', '8.3' ] + dependency-version: [ '' ] + include: + - php: '7.3' + dependency-version: '--prefer-lowest' + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php }} + coverage: none + - name: Cache Composer dependencies + uses: actions/cache@v3 + with: + path: ~/.composer/cache + key: php-${{ matrix.php }}-composer-locked-${{ hashFiles('composer.lock') }} + restore-keys: php-${{ matrix.php }}-composer-locked- + - name: Install PHP dependencies + run: composer update ${{ matrix.dependency-version }} --prefer-dist --no-interaction --no-progress --no-suggest + - name: PHPUnit + run: vendor/bin/phpunit + + cs: + name: Coding standards + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: 7.4 + tools: cs2pr + coverage: none + - name: Cache Composer dependencies + uses: actions/cache@v3 + with: + path: ~/.composer/cache + key: php-composer-locked-${{ hashFiles('composer.lock') }} + restore-keys: php-composer-locked- + - name: Install PHP dependencies + run: composer install --no-interaction --no-progress --no-suggest + - name: PHP CodeSniffer + run: vendor/bin/phpcs -q --no-colors --report=checkstyle | cs2pr diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 529a242..0000000 --- a/.travis.yml +++ /dev/null @@ -1,30 +0,0 @@ -language: php - -notifications: - email: - on_success: never - -php: - - 7.1 - - 7.2 - - 7.3 - - 7.4 - - 8.0snapshot - -matrix: - include: - - php: 7.1 - env: dependencies=lowest - -cache: - directories: - - $HOME/.composer/cache - -sudo: false - -before_script: - - composer install -n - - if [ "$dependencies" = "lowest" ]; then composer update --prefer-lowest --prefer-stable -n; fi; - -script: - - vendor/bin/phpunit