51 lines
1.3 KiB
YAML
51 lines
1.3 KiB
YAML
name: PHP Integration Tests
|
|
|
|
on:
|
|
pull_request:
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
test:
|
|
name: Integration Tests
|
|
runs-on: ubuntu-latest
|
|
services:
|
|
mongo:
|
|
image: mongo:8
|
|
options: >-
|
|
--health-cmd "mongosh --quiet --eval \"db.adminCommand('ping')\""
|
|
--health-interval 5s
|
|
--health-timeout 5s
|
|
--health-retries 12
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v6.0.2
|
|
|
|
- name: Set up PHP
|
|
uses: shivammathur/setup-php@44454db4f0199b8b9685a5d763dc37cbf79108e1
|
|
with:
|
|
php-version: '8.5'
|
|
tools: composer:v2
|
|
extensions: ctype, iconv, mongodb
|
|
|
|
- name: Install dependencies
|
|
run: composer install --prefer-dist --no-progress
|
|
|
|
- name: Retrieve Server Install Action
|
|
uses: actions/checkout@v6.0.2
|
|
with:
|
|
repository: Nodarx/action-server-install
|
|
ref: main
|
|
path: action-server-install
|
|
github-server-url: https://git.ktrix.dev
|
|
|
|
- name: Configure server settings
|
|
env:
|
|
DATABASE_URI: 'mongodb://mongo:27017/?tls=false'
|
|
DATABASE_NAME: 'ktrix_ci'
|
|
APP_ENVIRONMENT: 'test'
|
|
run: php action-server-install/scripts/configure-server.php config/system.php
|
|
|
|
- name: Run tests
|
|
run: composer test:integration
|