Skip to content

Continuous Integration #376

Continuous Integration

Continuous Integration #376

name: "Continuous Integration"
on:
push:
pull_request:
schedule:
- cron: '0 0 * * *'
jobs:
tests:
runs-on: ubuntu-latest
services:
oracle:
image: deepdiver/docker-oracle-xe-11g:2.0
ports:
- 49160:22
- 1521:1521
strategy:
fail-fast: true
matrix:
php: [8.0, 8.1, 8.2]
stability: [prefer-stable]
name: PHP ${{ matrix.php }} - STABILITY ${{ matrix.stability }}
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, gd, memcached
tools: composer:v2, pecl
coverage: none
- name: Setup Memcached
uses: niden/actions-memcached@v7
- name: Setup problem matchers
run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json"
- name: Setup OCI8
run: ./oci8-php80.sh
if: matrix.php == 8
- name: Setup OCI8
run: ./oci8-php81.sh
if: matrix.php == 8.1
- name: Setup OCI8
run: ./oci8-php82.sh
if: matrix.php == 8.2
- name: Install dependencies
uses: nick-invision/retry@v1
with:
timeout_minutes: 5
max_attempts: 5
command: composer update --${{ matrix.stability }} --prefer-dist --no-interaction --no-progress
- name: Execute tests
run: vendor/bin/phpunit