From 62b15d84c7db048a13f5a32e84fc4130a3e8c652 Mon Sep 17 00:00:00 2001 From: Hafiz Muhammad Moaz Date: Mon, 7 Sep 2026 17:01:32 +0500 Subject: [PATCH] ci: test PHP 8.2-8.4 on ubuntu+windows, drop unused services and make lint blocking (fixes #53) --- .github/workflows/ci.yml | 46 +++++++++------------------------------- 1 file changed, 10 insertions(+), 36 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a0fdde2..3c5c41c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,46 +10,21 @@ permissions: jobs: test: - name: test - runs-on: ubuntu-latest - services: - mariadb: - image: mariadb:11 - env: - MARIADB_ROOT_PASSWORD: password - MARIADB_DATABASE: framework-tests - ports: - - 3306:3306 - options: >- - --health-cmd="healthcheck.sh --connect --innodb_initialized" - --health-interval=10s --health-timeout=5s --health-retries=15 - redis: - image: redis:7 - ports: - - 6379:6379 - options: >- - --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=10 - memcached: - image: memcached:1.6 - ports: - - 11211:11211 - env: - DB_HOST: 127.0.0.1 - DB_PORT: 3306 - DB_USERNAME: root - DB_PASSWORD: password - DB_SCHEMA: framework-tests - REDIS_HOST: 127.0.0.1 - MEMCACHED_HOST: 127.0.0.1 + name: test / php ${{ matrix.php }} / ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + php: ['8.2', '8.3', '8.4'] + os: [ubuntu-latest, windows-latest] steps: - uses: actions/checkout@v4 - name: Setup PHP uses: shivammathur/setup-php@v2 with: - php-version: '8.4' - extensions: intl, sodium, gd, mysqli, curl, fileinfo, json, dom, simplexml, mbstring, zip, redis, memcached, apcu + php-version: ${{ matrix.php }} + extensions: mbstring, curl, fileinfo, json, dom, simplexml coverage: pcov - ini-values: apc.enable_cli=1, mysqli.allow_local_infile=1 - name: Validate composer.json run: composer validate --no-check-publish - name: Install dependencies @@ -65,14 +40,13 @@ jobs: lint: name: lint runs-on: ubuntu-latest - continue-on-error: true steps: - uses: actions/checkout@v4 - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: '8.4' - extensions: intl, sodium, gd, mysqli, curl, fileinfo, json, dom, simplexml, mbstring, zip + extensions: mbstring, curl, fileinfo, json, dom, simplexml coverage: none - name: Install dependencies run: composer install --no-interaction --prefer-dist --no-progress