Skip to content

FEATURE: Compatibility with Neos 9 #6

FEATURE: Compatibility with Neos 9

FEATURE: Compatibility with Neos 9 #6

Workflow file for this run

name: Tests
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
env:
PACKAGE_FOLDER: Shel.CriticalCSS
jobs:
codestyle:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
- name: Add additional dependencies
run: |
composer require --no-update --no-interaction neos/contentgraph-doctrinedbaladapter:"~9.0.0"
- name: Cache dependencies
uses: actions/cache@v3
with:
path: ~/.composer/cache
key: dependencies-composer-${{ hashFiles('composer.json') }}
- name: Install dependencies
uses: php-actions/composer@v6
with:
php_version: 8.2
version: 2
- name: PHPStan
uses: php-actions/phpstan@v3
with:
php_version: 8.2
version: 2.1.17
command: analyse
path: 'Classes/'
build:
runs-on: ubuntu-latest
strategy:
matrix:
php-versions:
- '8.2'
neosVersion:
- '9.0'
services:
mariadb:
# see https://mariadb.com/kb/en/mariadb-server-release-dates/
# this should be a current release, e.g. the LTS version
image: mariadb:10.8
env:
MYSQL_USER: neos
MYSQL_PASSWORD: neos
MYSQL_DATABASE: neos_functional_testing
MYSQL_ROOT_PASSWORD: neos
ports:
- "3306:3306"
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
name: 'Shel.CriticalCSS with Neos ${{ matrix.neosVersion }} test'
env:
NEOS_TARGET_VERSION: ${{matrix.neosVersion}}
FLOW_CONTEXT: Testing
FLOW_FOLDER: ../neos-base-distribution
steps:
- uses: actions/checkout@v3
- name: Set package branch name
run: echo "PACKAGE_TARGET_VERSION=${GITHUB_BASE_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_ENV
working-directory: .
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-versions }}
extensions: mbstring, xml, json, zlib, iconv, intl, pdo_sqlite, mysql
tools: composer:v2
- name: Cache dependencies
uses: actions/cache@v3
with:
path: ~/.composer/cache
key: dependencies-composer-${{ hashFiles('composer.json') }}
- name: Prepare Flow distribution
run: |
git clone https://github.com/neos/neos-base-distribution.git -b ${NEOS_TARGET_VERSION} ${FLOW_FOLDER}
cd ${FLOW_FOLDER}
git -C ../${{ env.PACKAGE_FOLDER }} checkout -b build
composer config repositories.package '{ "type": "path", "url": "../${{ env.PACKAGE_FOLDER }}", "options": { "symlink": false } }'
composer require --no-update --no-interaction shel/critical-css:"dev-build as dev-${PACKAGE_TARGET_VERSION}"
composer require --no-update --no-interaction neos/contentgraph-doctrinedbaladapter:"~9.0.0"
- name: Composer Install
run: |
cd ${FLOW_FOLDER}
composer update --no-interaction --no-progress
- name: Setup Flow configuration
run: |
cd ${FLOW_FOLDER}
rm -f Configuration/Testing/Settings.yaml
cat <<EOF >> Configuration/Testing/Settings.yaml
Neos:
Flow:
persistence:
backendOptions:
host: '127.0.0.1'
driver: pdo_mysql
user: 'neos'
password: 'neos'
dbname: 'neos_functional_testing'
EOF
- name: Run Functional tests
run: |
cd ${FLOW_FOLDER}
bin/phpunit --colors -c Build/BuildEssentials/PhpUnit/FunctionalTests.xml Packages/Plugins/Shel.CriticalCSS/Tests/Functional/